Katakanlah di A1 saya punya "= ROW ()". Sel menunjukkan '1' karena ini adalah baris pertama dalam sheet.
Sekarang di A2, saya meletakkan "= A1". Sayangnya, ini merujuk pada VALUE A1, bukan rumus. Jika referensi rumus, maka sebaliknya A2 akan memberikan nilai '2' sebagai gantinya (yang saya inginkan).
Jika saya kemudian mengubah rumus di A1 setelahnya, maka nilai A2 juga akan berubah, karena itu bergantung pada rumus di A1.
Bagaimana saya melakukannya?
microsoft-excel
Dan W
sumber
sumber
Jawaban:
Tidak ada cara untuk melakukan ini secara asli dengan fungsi lembar kerja Excel. Jika Anda membutuhkan fungsi ini, Anda harus menggunakan VBA.
Anda bisa menggunakan acara Worksheet_Change (). Ini akan menyala ketika konten sel diubah, tetapi tidak dengan perhitungan ulang sederhana. Ini memiliki parameter yang menunjukkan sel-sel yang telah diubah; Anda dapat menggunakan ini untuk melihat apakah Anda perlu melakukan sesuatu. Kode ini harus masuk dalam area kode untuk lembar kerja yang Anda gunakan. (Buka VBA dengan Alt + F11; di panel kiri, klik dua kali pada lembar kerja. Anda akan melihat sesuatu seperti "Microsoft Visual Basic - nama file - [ sheetname (Kode)]" di bilah judul.)
Jelas, perbarui nama sheet dan rentang seperti yang disyaratkan dalam kode di bawah ini.
Kode di atas akan menyalin rumus dengan tepat - jika Anda merujuk ke sel F3 di sel A1, Anda juga akan memiliki referensi ke sel F3 di sel A2. Jika Anda tidak ingin ini terjadi, ubah baris di dalam pernyataan Jika ke
dest.FormulaR1C1 = src.FormulaR1C1
. Ini akan mengubah referensi relatif apa pun dalam rumus Anda dengan tepat.Anda bisa mengubah
dest
ke rentang yang lebih besar jika Anda ingin mengatur banyak sel sekaligus berdasarkan rumus di sel A1.Satu catatan adalah bahwa ini tidak akan secara otomatis mengembalikan rumus di sel jika Anda mengubah sel-sel - yaitu jika Anda mengubah rumus di A2, ini tidak akan secara otomatis mengembalikannya, karena kami hanya melakukan pembaruan ketika sel A1 perubahan. Jika Anda ingin melindungi dari ini, ubah jalurnya
untuk
sumber
Anda dapat mencapainya dengan tabel (dari Excel 2007: pilih rentang Anda lalu: Sisipkan - Tabel; baris pertama harus berisi judul ).
Setiap kali Anda mengubah rumus, rumus itu akan diperbarui di seluruh kolom (atau Anda akan ditanya apakah Anda ingin memperbaruinya jika rumus di kolom itu tidak sama sebelum perubahan).
Memperbarui
Di sini Anda menemukan deskripsi terperinci cara membuat kolom terhitung dalam tabel.
Sekarang jika Anda mengubah rumus di salah satu sel seluruh kolom akan diperbarui. (Dukungan Office)
Jika bukan itu masalahnya, pastikan bahwa "isi rumus dalam tabel untuk membuat kolom terhitung" dicentang di File - Options - Proofing - "AutoFormat as You Type" tab.
sumber