Bagaimana cara mengganti nama sheet menggunakan vba di excel?

Saat Anda menambahkan lembar baru ke buku kerja, Anda memiliki opsi untuk menamainya. Namun Anda juga bisa mengganti namanya kapan saja menggunakan properti nama lembar kerja. Dalam tutorial ini, kita akan melihat berbagai cara untuk mengganti nama satu atau beberapa lembar menggunakan kode VBA.

Langkah-langkah mengganti nama sheet menggunakan kode VBA

  1. Pertama, tentukan lembar yang ingin Anda ganti namanya menggunakan objek lembar kerja.
  2. Setelah itu, Anda perlu menggunakan (.Name) untuk mengakses properti nama yang ingin Anda ubah.
  3. Selanjutnya, ketikkan tanda sama dengan untuk memberi tahu VBA nilai yang ingin Anda gunakan untuk mengganti nama sheet.
  4. Terakhir, ketikkan nama sheet yang ingin Anda gunakan.
tentukan-lembar-yang-ingin-Anda-ganti namanya

Tautan yang berguna: Jalankan makroPerekam makroEditor Visual BasicBuku Pegangan Makro Pribadi

Ganti nama lembar aktif

Jika Anda ingin mengganti nama sheet aktif, dalam hal ini Anda tidak perlu mengatur nama sheet, melainkan Anda perlu menggunakan objek ActiveSheet yang memberitahu VBA untuk merujuk ke sheet aktif saat ini. Ini kodenya.

 Activesheet.Name = "mySheet"
ganti nama-lembar aktif

Catatan: Untuk mengganti nama sheet, Anda tidak perlu mengaktifkannya.

Ganti nama sheet menggunakan nomor sheet

Seperti yang Anda ketahui, setiap lembar memiliki nomor tergantung posisinya di buku kerja. Katakanlah Anda ingin mengganti nama sheet yang Anda miliki menjadi nomor kelima, kodenya adalah.

 Sheets(5).Name = "mySheet5"
ganti nama-lembar-menggunakan-nomor-lembar

Saat Anda menjalankan makro di atas , makro tersebut akan mengganti nama sheet yang ada di nomor kelima.

ganti nama-lembar-seperti-dengan-angka

Periksa apakah sheet ada sebelum mengganti nama

Jika Anda mencoba mengganti nama lembar kerja yang tidak ada, VBA akan menampilkan error, seperti di bawah ini.

periksa apakah sheet ada sebelum mengganti nama

Solusi untuk masalah ini adalah kode berikut yang menggunakan FOR EACH , yang dapat menelusuri semua lembar kerja untuk menemukan lembar yang Anda tentukan dan kemudian mengganti nama lembar tersebut.

 Sub check_sheet_rename() Dim ws As Worksheet Dim mySheet As String Dim SheetName As String mySheet = InputBox("enter the name of the sheet that you want to rename.") SheetName = InputBox("Enter new name for the sheet.") For Each ws In ThisWorkbook.Worksheets If mySheet = ws.Name Then ws.Name = SheetName End If Next ws End Sub

Ganti nama sheet menggunakan nilai sel atau rentang

Anda juga dapat mengganti nama sheet dengan mengambil nilai sel. Katakanlah nilainya ada di sel A1.

 Sheets("Sheet1").name = Range("A1").Value

Namun misalkan Anda ingin memberi nama beberapa lembar berdasarkan nilai dalam rentang sel. Dalam hal ini Anda harus memiliki kode seperti ini.

 Sub vba_sheet_rename_multiple() Dim wsCount As Long Dim rCount As Long Dim ws As Worksheet Dim name As Range Dim i As Long wsCount = ThisWorkbook.Worksheets.Count rCount = Range("A1:A10").Rows.Count 'Checks if the count of the names provided is less _ or more than the sheets in the workbook If wsCount <> rCount Then MsgBox "There's some problem with the names provided." Exit Sub Else 'Check if any of the cells in the name range is empty. For Each name In Range("A1:A10") If IsEmpty(name) = True Then i = i + 1 End If Next name If i > 0 Then MsgBox "There's is a blank cell in the names range." Exit Sub End If End If 'rename each sheet using the value from the range cell by cell. i = 1 For Each ws In ThisWorkbook.Worksheets ws.name = Range("A1:A10").Cells(i, 1).Value i = 1 + i Next ws End Sub

Saat Anda menjalankan kode VBA ini, pertama-tama kode tersebut akan memeriksa apakah sel dalam rentang tersebut sama dengan jumlah lembar yang Anda miliki di buku kerja. Setelah itu, ia akan memeriksa apakah semua sel dalam rentang yang Anda tentukan memiliki nilai atau tidak. Dan pada akhirnya ganti nama semua sheet menggunakan nama-nama ini.

Ini akan memeriksa dua kondisi menggunakan IF THEN ELSE lalu mengganti nama semua sheet.

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *