Saya memiliki tabel dengan kolom input dan telah menyiapkan dua tabel dengan nilai input yang diijinkan. Tabel yang benar tergantung pada nilai dalam sel di akhir setiap baris. Untuk menentukan tabel mana yang diperbolehkan, saya menyiapkan rumus validasi data (seperti =if cellatendof row>0, table1, table2
). Saya mencoba menyeret validasi data ke bawah tetapi tidak akan menggunakan referensi relatif pada sel yang harus diperiksa. Jadi, saya secara manual masuk ke setiap sel di kolom dan memperbarui rumus validasi data untuk memeriksa sel untuk baris tertentu (seperti =if cellatendofrow1>0... then next =if cellatendofrow2>0
...).
Ini berfungsi tetapi tidak akan mengizinkan siapa pun untuk menambah atau menghapus baris - atau bahkan mengurutkan data - tanpa membuat rumus validasi data tidak aktif. Alih-alih menunjuk ke lokasi baru sel, itu menunjuk ke baris asli hardcode. Jadi jika satu baris ditambahkan, sekarang baris 1 telah pindah ke baris 2 tetapi rumusnya masih melihat cellatendofrow1
karena hardcoded seperti itu, seperti semua baris lainnya, dan hasilnya kemungkinan tidak valid.
Apakah ada cara untuk membuat referensi relatif daripada statis dan bergerak dengan sisa baris?
Maaf untuk mengatakan saya tidak tahu VB - tetapi bisa mencoba jika itu akan memperbaikinya!
sumber
A99
,A$99
,$A99
, atau$A$99
?Jawaban:
Jika Bendera tabel diucapkan
ColumnC
(selalu!) maka rumus seperti yang ditunjukkan di bawah ini tampaknya berfungsi (menggunakan rentang bernama):sumber