Saya baru mengenal VBA dan saya mencoba menulis beberapa kode yang memilih mendapatkan rentang semua sel di lembar kerja yang berbeda dari yang sekarang, mencetaknya di kotak pesan (untuk tujuan pengujian), dan kembali ke lembar asli . Saya bermaksud menggunakan rentang ini untuk membuat tabel pivot di lembar baru, sehingga pada akhirnya harus berbentuk "R1C1:R929C25
" Untuk melakukan ini, saya menggunakan kode yang saya temukan di sini:
Bagaimana Anda memilih seluruh lembar Excel dengan Range menggunakan Makro di VBA?
Ini adalah kode yang saya miliki sejauh ini:
Sheets("My_Sheet_Name").Cells.Select
MsgBox (Str(Range(Cells.Address)))
Sheets(Sheets.Count).Select
Namun, ini mengembalikan kesalahan:
Kesalahan run-time '1004':
Pemilihan metode kelas Range gagal.
Sunting: Saya sudah mendapatkan kode untuk mendapatkan rangenya, namun bagaimana cara membuatnya menjadi bentuk "R1C1:R929C25
"?
KODE KERJA YANG LENGKAP:
Dim rng As Range
Set rng = Sheets("My_Sheet").UsedRange
Dim rc_range
rc_range = "R" & Trim(Str(rng.Rows.Count)) & "C" & Trim(Str(rng.Columns.Count))
MsgBox (rc_range)
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"My_Sheet!R1C1:" & rc_range, Version:=xlPivotTableVersion10). _
CreatePivotTable TableDestination:=ActiveSheet.Name + "!R4C4",
TableName:=inputValue + "_PivotTable" _ , Versi Default:=xlPivotTableVersion10