Excel başladığında bir makro çalıştırmanız mı gerekiyor? İki seçeneğiniz var:
1. 'ThisWorkbook' içinde bir Workbook_Open() alt oluşturun.
2. Herhangi bir modülün içine bir Auto_Open() alt öğesi yerleştirin.
Workbook_Open Etkinliği
'ThisWorkbook' içinde 'Workbook_Open' başlıklı bir alt oluşturun
123 | Workbook_open ()MsgBox "Bu kod Excel başlangıcında çalıştı!"Alt Bitiş |
Otomatik_Aç
İkinci yöntemi kullanarak: Basitçe Auto_Open adında bir alt program oluşturun ve içine kod yerleştirin veya oradan başka bir alt program çağırın. Excel başladığında kodunuz otomatik olarak çalışır.
123 | Özel Alt Otomatik_Aç()MsgBox "Bu kod Excel başlangıcında çalıştı!"Alt Bitiş |
Excel Her Açıldığında Yeni Çalışma Sayfası Oluşturun ve Adlandırın
Aşağıdaki kod bir çalışma kitabını açar. Otomatik olarak yeni bir sayfa ekler ve onu tarihle etiketler. Ayrıca, günde bir defadan fazla açılma olasılığına izin vermek için sayfanın zaten var olup olmadığını kontrol eder.
Bu kod, Çalışma Kitabı Açık Etkinliğini kullanır ve çalışma kitabı modülüne “Çalışma Kitabını Aç” olayı altında yerleştirilmelidir. Sheet_Exist işlevi bir modüle yerleştirilmelidir ve bu, sayfanın var olup olmadığını kontrol eder:
123456789101112131415 | Özel Alt Çalışma Kitabı_Open()Dize Olarak Yeni_Sayfa_Adı KarartNew_Sheet_Name = Format(Şimdi(), "gg-aa-yy")Sheet_Exists(New_Sheet_Name) = False iseÇalışma Kitabı ileWorksheets.Add().Name = Yeni_Sayfa_Adıİle bitmekBitirKaydetmekAlt Bitiş |
12345678910111213 | İşlev Sheet_Exists(WorkSheet_Name As String) As BooleanÇalışma Sayfası Olarak Dim Work_sheetSheet_Exists = YanlışThisWorkbook.Worksheets'teki Her Çalışma Sayfası İçinWork_sheet.Name = WorkSheet_Name iseSheet_Exists = DoğruBitirSonrakiBitiş İşlevi |
Bu eğitim için .XLSM dosyasını indirmek için burayı tıklayın
Çalışma Kitabı Açıldığında Varsayılan Sayfayı Ayarla
Bir çalışma kitabı açıldığında her zaman ilk önce bir sayfanın gösterildiğinden emin olmak ister misiniz? Örneğin, bir çalışma kitabı sayfası3 açtığınızda her zaman etkin sayfadır. İşte nasıl.
VBA'dan bir sayfaya program adıyla (yani Sayfa3) veya sekme adıyla (yani JanData) başvurabilirsiniz. Program adını kullanmak en iyisidir, çünkü sekme adı değişirse, bir sekme adına başvuran VBA kodunuz artık çalışmayacaktır. Ancak program adını kullanırsanız, bir kullanıcı sekme adını birden çok kez değiştirebilir ve makronuz çalışmaya devam eder.
Bir çalışma kitabı açıldığında belirli bir sayfanın her zaman etkinleştirildiğinden emin olmak için, workbook_open alt bölümüne Sheet.activate kodunu yerleştirmeniz yeterlidir. Bu, bir çalışma kitabı her açıldığında program adını kullanarak sayfa3'ü etkinleştiren bir örnektir.
123 | Özel Alt Çalışma Kitabı_Open()Sayfa3.EtkinleştirAlt Bitiş |
Ve bunu sekme adını kullanarak yapar:
1234 | Özel Alt Çalışma Kitabı_Open()Sheets("mytabname").EtkinleştirAlt Bitiş |
Sidenote: Bunun çalışması için excel'i kaydetmeli ve yeniden başlatmalısınız.
Sidenote: Bu, yalnızca makrolar etkinleştirildiğinde çalışır.
Sidenote: Bu kodu, VBE'deki ThisWorkbook nesnesinin kod penceresine yerleştirin.
Çalışma Kitabı Her Açıldığında Formu Yükle
Excel çalışma kitabını açtığınızda bir form yüklemek veya bir VBA kodu çalıştırmak isterseniz, kodunuzu Thisworkbook code penceresine ve Workbook_Open alt bölümüne yerleştirin.
E-tablonuzdan:
1. VB düzenleyicisini açmak için ALT ve F11 tuşlarına basın
2. Kod penceresini açmak için ThisWorkbook kelimesini çift tıklayın.
3. ThisWorkbook kod penceresine aşağıdaki kodu yazın
123 | Özel Alt Çalışma Kitabı_Open()KullanıcıForm1.GösterAlt Bitiş |
Sidenote: Userform1'i form adınızla değiştirin
4. Excel'i kapatın ve yeniden açın.