Jac bertanya:
Saya membuat tabel, jumlah kolom yang sama tetapi setiap kali jumlah baris berbeda. Saya dapat menentukan tanpa masalah baris terakhir dan kolom terakhir untuk membuat perhitungan yang saya butuhkan dalam makro. Sekarang tujuannya adalah untuk menambahkan dalam makro ini kemungkinan untuk memberi nama tabel (dengan nama yang sama setiap saat), tetapi di makro kisaran sel yang terkait dengan lembar kerja adalah R1C1: RxCy, saya tidak tahu bagaimana menulis kisaran menggunakan nilai lastrow dan lastcolumn (yang mewakili kolom dan baris terakhir dari tabel) dengan sistem RC (saya bahkan tidak tahu apakah itu mungkin).
Kebanyakan programmer VBA akan menggunakan metode berikut, yang menggunakan metode Names.Add.
Sub Method1() LastRow = Cells(65536, 1).end(xlUp).row LastCol = Cells(1, 255).End(xlToLeft).column MyArea = "='" & ActiveSheet.Name & "'!R1C1:R" & LastRow & "C" & LastCol ActiveWorkbook.Names.Add Name:="TheData", RefersToR1C1:=MyArea End Sub
Ada metode yang lebih mudah untuk menetapkan nama rentang. Empat pernyataan berikut semuanya setara. Dua yang terakhir jauh lebih mudah:
ActiveWorkbook.Names.Add Name:="TheData", RefersToR1C1:="=Sheet1!R1C1:R10C5" ActiveWorkbook.Names.Add Name:="TheData", RefersTo:="=Sheet1!A1:E10" Range("A1:E10").Name = "TheData" Cells(1, 1).Resize(10, 5).Name = "TheData"
Jac - Saya akan menyesuaikan baris terakhir untuk digunakan:
Sub Method2() LastRow = Cells(65536, 1).end(xlUp).row LastCol = Cells(1, 255).End(xlToLeft).column Cells(1, 1).Resize(LastRow, LastCol).Name = "TheData" End Sub
Saya mempelajari cara pintas ini untuk menetapkan nama rentang dari Referensi Programmer Excel 2002 Bovey & Bullen. Versi 2002 buku ini berputar-putar di sekitar versi 2000. Untuk uang saya, setiap programmer Excel VBA membutuhkan buku itu di tangan kanannya. Salinan saya adalah dog-eared dan tidak pernah keluar dari jangkauan.