Saya baru saja memulai pekerjaan baru. Ini adalah posisi manajemen dan perusahaan tidak memiliki banyak hal di departemen TI. Karena itu, saya telah mencoba membuat alat manajemen saya sendiri. Rekan-rekan saya juga takut dengan Access dan tidak ingin ada keterlibatan dalam apa pun yang saya buat melalui itu. Alasan saya merasa ini relevan untuk disebutkan adalah karena solusi yang paling jelas untuk masalah saya saat ini adalah 'hanya menggunakan Akses' yang mungkin akhirnya harus saya lakukan jika ternyata saya keluar dari kedalaman saya di sini.
Salah satu alat yang saya kerjakan saat ini adalah matriks keterampilan / rencana suksesi. Pada satu lembar kerja saya memiliki daftar tugas yang diperlukan sesuai dengan deskripsi pekerjaan karyawan dan apakah mereka memerlukan pelatihan atau tidak.
Saya ingin semua interaksi pengguna terjadi pada lembar kerja 'pencarian' sehingga data 'back end' tidak dimanipulasi pada sumbernya secara manual oleh siapa pun tetapi saya jika perlu. Setelah menjalankan pencarian, salinan makro yang direkam, pasta dan format satu set rumus Pencocokan Indeks dari lembar lain untuk menyajikan hasil. Dalam hal ini, daftar tempat pelatihan karyawan adalah 'Tidak'.
Dari hasil daftar ini, saya ingin pengguna dapat memilih sel yang ingin mereka perbarui, dan klik tombol untuk memperbarui sel sumber dari 'Tidak' ke 'Ya'. Di bawah ini adalah tebakan saya bagaimana untuk mencapai ini. Saya tidak tahu apa-apa tentang VBA.
Sub updateyes()
SendKeys "(^[)"
Worksheets("Sheet1").Activate
ActiveCell.Value = "Yes"
Sheets("Search & Update").Select
Range("A6").Select
End Sub
Sendkey itu sendiri berhasil dipindahkan ke sel sumber dan memilihnya. Secara keseluruhan, kode di atas hanya memperbarui sel apa pun yang terakhir dipilih secara manual pada lembar kerja 'back end'.
Saya tidak dapat membuat referensi kode sel khususnya karena tergantung pada sel mana yang sedang dipilih oleh pengguna.
Apa yang ingin saya capai dalam ringkasan adalah ini:
Pengguna memilih sel untuk memperbarui, tombol klik. Makro berjalan ke sel sumber yang dipilih, pembaruan dari tidak ke ya, kembali ke lembar kerja 'pencarian'.
Mudah bukan? Dari tanggapan yang sudah saya miliki, sepertinya saya mungkin keluar dari liga saya. Banyak terima kasih sebelumnya.
sumber
Jawaban:
Kode Anda mengandalkan sangat rapuh
Select
danActivate
, di atas secara implisit merujuk buku kerja aktif dan lembar aktif.Ini akan menjadi temanmu:
Sekarang, alih-alih memilih dan mengaktifkan sesuatu, gunakan referensi eksplisit ini .
Alih-alih ini:
Melakukan hal ini:
(jika itu yang ingin dilakukan oleh kode Anda - tidak terlalu jelas apa yang seharusnya dilakukan)
sumber