Makro Untuk Menambahkan Laporan Harian - Tips Excel

Judith memposting pertanyaan Excel minggu ini.

Saya perlu mengimpor file setiap hari. Saya ingin menambahkan file tersebut setiap hari ke buku kerja Excel yang sudah ada dan memiliki lembar kerja yang dinamai d / m / y.

Makro visual basic yang singkat akan membuat tugas ini menjadi sederhana. Satu masalah - nama tab lembar tidak dapat menyertakan garis miring. Jadi, solusi akan mengganti nama sheet setiap hari menjadi "Okt 03 1999".

Solusinya melibatkan menambahkan lembar kerja teratas ke buku Anda yang sudah ada. Sheet ini, disebut "Menu" menyediakan antarmuka pengguna yang sederhana sehingga Anda dapat menyerahkan tugas ini kepada anggota staf lain, jika perlu. Lembar atas berisi sel tempat pengguna dapat menentukan nama jalur dan nama file dari file yang akan diimpor. Jika Anda mengimpor file yang dibuat oleh sistem lain, maka bidang ini tidak akan berubah dari hari ke hari. Lembar Menu juga berisi sel dengan tanggal saat ini diformat tanpa garis miring. Saya akan menyertakan makro buka otomatis yang secara otomatis akan mengisi sel ini untuk pengguna, tetapi mereka selalu bebas untuk mengubahnya sebelum mengklik tombol untuk mengimpor file. Terakhir, lembar Menu memiliki tombol besar yang akan diklik pengguna.Tombol ini akan memanggil makro untuk mengimpor file bernama di Menu ke dalam buku saat ini dengan nama tab yang ditentukan.

Lembar Kerja Menu

Buka buku kerja baru hanya dengan satu lembar. Klik dua kali tab lembar dan ketikkan nama untuk lembar yang disebut "Menu". Tambahkan judul yang bagus di sel A1. Di Sel C3: C5, tambahkan teks seperti yang ditunjukkan di kiri. Di Sel D3, masukkan nama jalur untuk direktori tempat file ditemukan setiap hari. Di sel D4, tambahkan nama file. Biarkan D5 kosong. Lebih mudah untuk mengatur tombol setelah makro dibuat, jadi kita akan membiarkannya nanti.

  • Mulai Editor Makro dengan alt = "" + F11
  • Pilih Sisipkan - Modul
  • Salin teks berikut ke editor makro
Sub Auto_Open() ' This macro will put today's date as the default new tab name Sheets("Menu").Select Range("D5").Select Selection.Formula = "=text(now(),""mmm dd yyyy"")" Selection.Copy Selection.PasteSpecial Paste:=xlValues Application.CutCopyMode = False Selection.Columns.AutoFit Range("D8").Value = "" End Sub Sub GetFile() ' This macro will import a file into this workbook ' Copyright 1999 www.MrExcel.com Sheets("Menu").Select PathName = Range("D3").Value Filename = Range("D4").Value TabName = Range("D5").Value ControlFile = ActiveWorkbook.Name Workbooks.Open Filename:=PathName & Filename ActiveSheet.Name = TabName Sheets(TabName).Copy After:=Workbooks(ControlFile).Sheets(1) Windows(Filename).Activate ActiveWorkbook.Close SaveChanges:=False Windows(ControlFile).Activate Sheets("Menu").Select Range("D8").Select ActiveCell.Value = "Completed" Range("D9").Select End Sub

Sekarang, kembali ke Excel dan tambahkan tombol ke lembar Menu.

Cara Menambahkan Tombol ke Lembar Kerja

Tambahkan Tombol
  • Tampilkan Forms Toolbar dengan memilih View - Toolbars - Forms
  • Pilih alat Tombol dari bilah alat
  • Tahan tombol alt = "", seret dari pojok atas B8 ke sel C9
  • Dari dialog Assign Macro, pilih makro kami yang disebut GetFile dan klik OK
  • Saat tombol masih dipilih, Anda dapat mengklik dan menyeret untuk memilih teks pada tombol. Gantikan teks ini dengan "Proses!" atau teks pilihan Anda sendiri

Anda sekarang memiliki aplikasi yang lengkap. Simpan file di tempat yang nyaman. Setelah Anda mengatur file Anda dengan informasi yang benar di sel D3: D4, prosedur hariannya adalah sebagai berikut:

  • Buka file yang baru kita buat
  • Verifikasi bahwa tanggal yang diperlihatkan di sel D5 sudah sesuai.
  • Klik tombol besar.
  • Simpan file

Berikut adalah beberapa cara untuk mengubah makro:

  • Jika Anda ingin tab diberi nama dengan tanggal hari sebelumnya, tambahkan "-1" setelah "SEKARANG ()" di makro.
  • Jika file yang akan diimpor memiliki beberapa sheet dan target sheet mungkin tidak berada di atas, maka tambahkan Sheets ("sheetname") Pilih setelah baris File.Open di atas.

Artikel yang menarik...