VBA Çalışma Kitabı Adı (Get, Set, Uzantısız)

Bu eğitim, Çalışma Kitabı adının VBA'da nasıl alınacağını ve ayarlanacağını gösterecektir.

VBA'da Aktif çalışma kitabının adını alabilir veya ayarlayabiliriz veya Excel'deki tüm açık çalışma kitaplarında dolaşabilir ve bir VBA Döngüsü kullanarak her birinin adını alabilir veya ayarlayabiliriz.

Çalışma Kitabı Adını Al

Etkin çalışma kitabının adını almak için çalışma kitapları nesnesinin name özelliğini kullanmamız gerekir.

12345 Alt GetWorkbookName()Dize Olarak Dim strWBNamestrWBName = ActiveWorkbook.NameMsgBox strWBAdıAlt Bitiş

Yukarıdaki kodu çalıştıracak olsaydık, ekranda Aktif çalışma kitabının adının bulunduğu bir mesaj kutusu belirirdi.

Tüm aktif Çalışma Kitapları arasında dolaşmak ve çalışma kitaplarının adlarını Excel'e döndürmek için aşağıdaki kodu çalıştırabiliriz:

1234567 Alt GetWorkbookNames()Çalışma Kitabı Olarak Dim wbÇalışma Kitaplarında Her wb içinActiveCell = wb.NameActiveCell.Offset(1, 0).SeçSonrakiAlt Bitiş

Yukarıdaki örnekler dosyanın uzantısını içerecektir (örn. xlsx). Uzantıyı dahil etmek istemiyorsanız, yalnızca çalışma kitabının dosya adını elde etmek için kullanabileceğimiz birkaç yöntem vardır.

Uzantısız Çalışma Kitabı Adını Alın

Dosya adındaki noktadan sonra herhangi bir karakteri kaldırmak için LEFT ve INSTR işlevlerini kullanabiliriz:

12345 Alt GetWorkbookName()Dize Olarak Dim strWBNamestrWBName = Sol(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)MsgBox strWBAdıAlt Bitiş

Dosya adının sonundan 5 karakter çıkarmak için SOL ve UZUNLUK fonksiyonlarını kullanabiliriz:

12345 Alt GetWorkbookName()Dize Olarak Dim strWBNamestrWBName = Sol(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 55)MsgBox strWBAdıAlt Bitiş

Çalışma Kitabı Adını Ayarlama

VBA'da bir çalışma kitabının adını ayarlamak için hala çalışma kitabının Ad özelliğini kullanıyoruz, ancak Aktif Çalışma Kitabının adını değiştirmek için bu yöntemi kullanamıyoruz. Bunun nedeni, Etkin çalışma kitabının açık olması ve bir dosya erişim hatası oluşmasıdır. Bunu aşmak için dosyayı yeni bir adla kaydedebilir ve ardından eski dosyayı silebiliriz.

12345678910 Public Sub SetWorkbookName()Dize olarak strPath'i karartDim strNewName As StringDize Olarak Dim strOldNamestrOldName = ActiveWorkbook.NamestrNewName = InputBox("Lütfen çalışma kitabı için yeni bir isim giriniz")strPath = ActiveWorkbook.PathActiveWorkbook.SaveAs strPath & "/" & strNewNamestrPath & "/" & strOldName'i öldürAlt Bitiş

Açık olmayan bir çalışma kitabını yeniden adlandırmak için Name yöntemini kullanabiliriz.

123 Public Sub RenameWorkbook()"C:\Data\MyFile.xlsx" adını "C:\Data\MyNewFile.xlsx" olarakAlt Bitiş

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave