Určite ? Mne to fachá na všetky súbory, či už XLS, XLSX, XLSM, otvárané priamo, otvárané z archívu. Nič nepadá, robí to to čo má, kopíruje ten dátum.
-určite máte v XLSB aj tú triedu definovanú v ThisWorkbook ?
-v samotnej triede cExcelEvents si už iba zamente ten msgbox Hello za Váš kód. Ja som to urobil za Vás tu to máte.
-Uložil ste ten XLSB po úprave?
-pozatvárajte Excel
-zálohujte si Váš XLSB súbor bokom. Nahraďte ho týmto v adresári
c:\Users\Vaše_meno\AppData\Roaming\Microsoft\Excel\XLSTART\
Kto nechce sťahovať tak:
V XLSB - ThisWorkbook
Option Explicit
Private XLApp As cExcelEvents
Private Sub Workbook_Open()
Set XLApp = New cExcelEvents
End Sub
V XLSB - cExcelEvents
Option Explicit
Private WithEvents App As Application
Private Sub Class_Initialize()
Set App = Application
End Sub
Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
'// Prevent message when this workbook is opened
If Wb.Name <> ThisWorkbook.Name Then
'MsgBox ("Hello")
Range("C2").Select
ActiveCell.FormulaR1C1 = "7/25/2017"
Range("C2").Select
Selection.NumberFormat = "yyyy/mm/dd"
Range("C2").Select
Selection.Copy
Range(Selection, Selection.End(xlDown)).Select
ActiveSheet.Paste
End If
End SubPříloha: 37426_personal.zip (13kB, staženo 31x) citovat