Bagaimana cara menyalin beberapa rumus relatif persis seperti apa adanya?

3

Saya ingin menyalin rumus dengan referensi relatif ke rentang lain tanpa mengubah rumus / memperbarui referensi relatif tersebut. Saya tahu ada beberapa add-on berbayar yang melakukan itu, tetapi saya tidak mencari untuk memberi uang kepada orang lain untuk sesuatu yang sederhana ini.

Contoh:
A1 mengandung =C2+B3 (dan berfungsi / menyelesaikan)

Salin A1 ke X1
X1 sekarang berisi =C2+B3 (dan berfungsi / menyelesaikan)

Saya melakukan ini dan kemudian saya sedikit memodifikasi salinan formula baru melalui penggantian dan cara lain. (Jadi saya membutuhkannya fungsional dan tidak menempelkan tautan khusus)

Saat ini, saya baru ganti = dengan x=, salin / tempel, lalu ganti x= dengan =. Saya telah melihat orang selama bertahun-tahun menggunakan cara yang lebih bagus melalui fungsionalitas XLS asli tetapi saya tidak tahu caranya. Saya perlu melakukan ini untuk ratusan formula berbeda sekaligus sehingga menyalin / menempelkan formula dari masing-masing secara individual tidak akan berfungsi.

/// Ada solusi tidak lengkap yang tersisa untuk mencari tahu:

Ubah format sel menjadi teks. Mengetik =A1 sekarang Anda hanya mendapatkan teks. Mengubah format kembali ke umum tidak menyelesaikan rumus. Bagaimana kita bisa menyelesaikan array ini untuk mulai berfungsi sebagai rumus lagi, bukan hanya teks? (Selain masuk ke setiap satu dan menekan enter)

... (dan bagi siapa pun yang penasaran add-on Kutools melakukan itu - salinan persisnya)

helena4
sumber
Salin formula dan bukan sel. Klik pada sel. Sorot teks di bilah rumus. Ctrl-C. Klik sel, lalu di bilah rumus, klik dan tekan ctrl-v
Scott Craner
Untuk satu per satu ya, menyalin 500 em sekaligus adalah tujuannya (: Dan saya sudah melihatnya selesai.
helena4
@ScottCraner Saya mendapat petunjuk dari seseorang di gedung. Anda dapat mengubah format area ke TEXT. kemudian jalankan fungsi (untuk mensimulasikan seolah-olah Anda masuk ke dalam sel dan menekan enter.) salin, lalu ubah format sel kembali normal dan jalankan fungsi untuk menghitung formula. Rupanya F9 tidak memotongnya.
helena4
Apakah Anda benar-benar membutuhkan formula itu untuk disalin? Apa tujuan di baliknya? Apakah Anda menyimpannya "disimpan" di X1 jika Anda mengubah rumus A1? Atau Anda ingin X1 memiliki rumus persis sama ditampilkan di A1? Kita mungkin bekerja pada sebuah Masalah XY - dapatkah Anda menggambarkan tujuan / gagasan utama di balik apa yang Anda coba lakukan?
BruceWayne
Ya saya lakukan. Saya perlu menyalin sebagian besar lembar saya yang berisi rumus relatif, dan memastikan rumus relatif tidak menyesuaikan jarak yang ditempuh. Ini adalah hasil yang sangat jelas dari test case jika diberikan dengan x = ganti.
helena4

Jawaban:

2

Ini dengan asumsi Anda memiliki salinan buku kerja yang disimpan.


1. Potong formula untuk rentang Anda.
2. Buka buku kerja baru dan tempel rentang pemotongan.
3. Tutup buku kerja asli tanpa menyimpan.
4. Buka buku kerja asli.
5. Potong dan rekatkan rentang dari buku kerja baru ke rentang baru di buku kerja asli.

Sel yang disisipkan sekarang akan secara eksplisit merujuk posisi asli (mis. [WorkBook1.xlsx]Sheet1!A1 ). Jika Anda tidak ingin referensi eksplisit, Anda dapat menggunakan temukan dan ganti untuk menghilangkan teks tambahan.

B540Glenn
sumber
Anda dapat menghindari menutup dokumen jika Anda menggunakan google doc untuk target tempel, lalu membatalkan pemotongan perangkat lunak. Namun solusinya lebih lambat dari sekedar melakukan penggantian tampaknya.
helena4
1

Kamu bisa memakai FORMULATEXT(). Jika formula dalam A1 aku s =B1+C1, di D1 jika Anda menempatkan =FORMULATEXT(A1), itu akan kembali =C1+B1 sebagai string.

Kemudian Anda dapat memindahkan formula, salin / tempel, dll.

enter image description here

BruceWayne
sumber
Anda hampir memenangkan ini kecuali seseorang memiliki metode yang lebih menarik.
helena4
@ helena4 - Apa maksud Anda "pelamun"? Seperti apa data Anda? Bisakah Anda mengklarifikasi, dalam OP Anda, apa sebenarnya yang Anda coba? Apakah Anda terbuka untuk menggunakan Macro?
BruceWayne
Lebih cepat untuk kumpulan data besar (:
helena4
@ helena4 - Anda dapat menyeret formula ke bawah dan mendapatkan semua formula. Apakah itu satu atau dua rumus, dan Anda ingin menyalin dalam rentang besar? Bisakah Anda memposting contoh data dan output yang Anda harapkan?
BruceWayne
Plus, bagaimana Anda menghitungnya? Jika Anda menggunakan tempel teks khusus dari = FORMULATEXT Anda dibiarkan dengan teks formula dan Anda tidak dapat membuatnya menjalankan formula secara teratur melalui F9. Dan Anda tidak ingin masuk ke dalam setiap sel untuk menekan enter ke formula mulai bekerja.
helena4
0

Saya hanya melakukan ini:

  1. Di sel dengan formula hit F2
  2. Sorot formulanya, dan tekan Ctrl + c untuk menyalinnya (sebagai teks).
  3. Rekatkan ke sel lain atau rentang sel :)
mayersdesign
sumber
1
Inilah yang disarankan oleh @ScottCraner, tetapi OP memiliki 500 formula seperti itu untuk dilakukan dan menyebutkan itu agak rumit.
BruceWayne
Saya belum melihat komentar, tetapi diberi OP dapat menyoroti rentang (berpotensi besar) sel sebelum menempel sulit untuk melihat apa yang sangat rumit tentang itu?
mayersdesign
1
Yah, tidak yakin, tetapi jika masing-masing formula berbeda, masuk ke banyak sel dan secara manual menyalin / menempelkan data mungkin memerlukan waktu. Tetapi tanpa melihat contoh data OP, ini akan berhasil juga. Saya berasumsi bahwa setiap formula berbeda. Jika itu hanya beberapa rumus untuk disisipkan, maka ya OP bisa melakukannya pada rentang.
BruceWayne
Ah! saya pikir itu hanya satu rumus, oh well, kita akan lihat :)
mayersdesign
ok saya akan menambahkan kata "berbeda" ke judul.
helena4
0

Bagaimana dengan menggunakan INDIRECT()?

=INDIRECT("A1"). Ini akan menunjukkan nilai itu A1 Formula kembali. Jika Anda memperbarui rumus di A1, itu akan diperbarui di mana-mana. Anda juga dapat menyalin / menempel INDIRECT() rumus di mana saja tanpa harus menyesuaikan referensi:

enter image description here

BruceWayne
sumber
Tidak langsung tidak stabil, komputer mulai mati ketika saya menggunakan sekitar 500000 contoh itu.
helena4