Terapkan satu formula ke semua sel yang dipilih

0

Jadi di Excel 2013 (v15.x), apakah masih ada satu langkah cara untuk menerapkan rumus arbitrer ke semua sel yang dipilih atau apakah saya hanya melewatkannya? Hal terdekat yang saya lihat di sini pada pencarian adalah jawaban untuk pertanyaan ini:

Bagaimana Anda menerapkan fungsi ke semua nilai dalam sel yang dipilih?

... di mana Anda memilih angka dalam satu sel, lalu Tempel Spesial ke rentang sel baru, dan di dalam Tempel Spesial Anda dapat memilih Tambah, Kurangi, Gandakan atau Bagi.

Tetapi seringkali saya membutuhkan formula yang kompleks di mana satu-satunya variabel mungkin sel itu sendiri. Salah satu aplikasi adalah menyiapkan lembar yang diterima untuk diimpor ke SQL atau konteks lainnya.

Jadi, untuk mengubah rentang sel di Kolom A (katakan, bertukar kata pertama / terakhir dalam setiap sel dan mengganti tanda baca), saya melakukan semua langkah berikut:

  1. Masukkan Kolom B baru di sebelah A. (Atau bekerja di area kosong lembar yang ada.)

  2. Masukkan formula saya di B1 referensi A1, misalnya.

  3. Seret-isi rumus sejauh Kolom B sesuai kebutuhan dan verifikasi hasil seperti yang diharapkan.

  4. Ctrl-C untuk memilih rentang sekarang-sudah disorot dalam B.

  5. Klik kanan sel pertama dari rentang yang sesuai di A.

  6. Pilih Tempel Spesial> Nilai dan verifikasi hasil.

  7. Hapus Kolom B (atau rentang menengah apa pun yang saya gunakan).

Sekarang tentu saja nomor 7 memiliki beberapa sifat magis yang dihormati secara historis, tetapi saya terus berpikir ini tidak mungkin menjadi cara yang paling tepat atau paling sederhana di tahun 2015, dalam spreadsheet yang memimpin pasar, untuk melakukan sesuatu yang sangat saya butuhkan. Bukankah orang lain? Aku harus menghadap jalan pintas yang semua orang tahu kecuali aku.

Bagaimana jika itu hanya fungsi bawaan yang sederhana seperti UPPER ()? Adakah cara untuk melakukan itu pada suatu seleksi tanpa membuat salinan perantara atau makro?

Jika entah bagaimana itu bukan hanya saya, apakah ada alternatif seperti LibreCalc yang menyediakan jalan pintas langsung?

TENTANG EDIT: Membaca kembali pertanyaan saya setelah melihat satu jawaban, saya kira saya tidak cukup jelas bahwa tujuan menerapkan rumus untuk misalnya sel A14 (di antara banyak) adalah untuk menghitung nilai baru untuk A14 yang berasal dari nilai asli dari A14 dan hanya menyisakan nilai (bukan rumus) di dalam sel. Misalnya nilai setiap sel dapat menjadi nilai & "- obs" yaitu ("ABC" menjadi "ABC-obs") atau sesuatu yang lebih rumit dari itu. Tapi saya kira inti masalahnya adalah menangani referensi diri yang disengaja untuk 1 iterasi, menyimpan nilai formula dan bukan formula itu sendiri.

Timberline
sumber

Jawaban:

0

Jika sel sudah dipilih maka cukup tekan CTRL+ ENTER. Anda juga dapat menyeret kuadrat di kanan bawah sel setelah menekan ENTERjika Anda lupa.

Juga, saat menentukan sel. Jika Anda meletakkan $di depan kolom, baris, atau kolom atau baris akan tetap sama untuk semua item. Jika tidak maka baris atau kolom itu akan relatif terhadap nilai di sel saat ini. Misalnya, jika Anda telah A1:C4memilih dan Anda memasukkan =D1ke dalam rumus untuk A1dan tekan CTRL+ ENTERmaka nilai-nilai di D1:F4akan digunakan dalam sel yang sesuai. Jika Anda menggunakan =$D$1semua sel akan menggunakan nilai dalam D1.

MEMPERBARUI

Satu-satunya cara yang saya sadari untuk melakukan apa yang Anda inginkan tanpa menggunakan nilai perantara adalah dengan menggunakan VBA. Fungsi dasar yang Anda inginkan sederhana. Akan terlihat seperti ini:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Intersect(Target, Range("A1:C100")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    Target = UCase(Target)
    Application.EnableEvents = True
End Sub

Cukup ganti baris Target = UCase(Target)dengan apa pun yang ingin Anda lakukan.

Krowe
sumber
BTW, sedikit trivia, fitur ini sering dikreditkan sebagai fitur aplikasi pembunuh pertama untuk PC. en.wikipedia.org/wiki/VisiCalc
krowe
OK, jadi Ctrl-Enter adalah alternatif yang lebih fleksibel untuk drag-filling karena tidak seperti menyeret gagang isian, ia dapat mengisi pilihan yang tidak jelas. Tetapi bagaimana dengan masalah referensi-diri? Jika saya ingin akhiran konten setiap sel yang dipilih dalam A dengan "-obs", menggunakan metode 7-langkah saya, saya berikan B1 rumus = A1 & "- obs" kemudian lanjutkan melalui sisa langkah-langkah untuk akhirnya "Tempel Nilai" hasil saya dari B kembali ke kolom A. Bagaimana saya akan menerapkan rumus itu secara langsung sehingga setiap sel berakhir bukan dengan rumus lingkaran tetapi dengan nilai (hanya) dari menerapkan rumus itu sekali saja?
Timberline
OK, saya akan melihat tentang mencoba pembaruan Anda besok dan kembali. Saya kira idealnya saya ingin membuat popup yang meminta ekspresi dan menetapkan Target = Evaluate (expr).
Timberline