Dies ist der Anfang meines Code:Variable mit InputBox vs mehrere U-Boote in einem Modul
Private FilesPath As String
Private CostCentersPath As String
Private FinalPath As String
Private CurrentName As String
Private CostCenters As Worksheet
Private Final As Workbook
Private Template As Worksheet
Sub ReadySetGo()
FilesPath = "O:\MAP\04_Operational Finance\Accruals\Accruals_Swiss_booked\2017\Month End\10_2017\Advertising\automation\" 'path change ("automation")
CostCentersPath = FilesPath & "CostCenters.xlsx"
CurrentName = InputBox("Please adjust the final file name:", , "ABGR_2017-10_FINAL.xls.xlsx")
FinalPath = FilesPath & CurrentName
Set CostCenters = Workbooks("CostCenters.xlsx").Worksheets("Cost Center Overview")
Set Final = Workbooks(CurrentName)
Set Template = Workbooks("Template.xlsm").Worksheets("Template")
End Sub
Sub ReadySetGo wird nur verwendet, um den Variablen Werte zuweisen und aus anderen U-Boote im Modul genannt. Aber offensichtlich bekomme ich bei dieser Methode jedes Mal, wenn das Sub aufgerufen wird, ein Eingabefeld. Gibt es neben dem Workbook.Open-Ereignis eine andere Möglichkeit, den CurrentName-Wert der Variablen an andere Subs im Modul zu übergeben, um mehrere InputBoxen zu vermeiden?
Danke, Bartek
Wenn Sie Wenn 'CurrentName' im gesamten Projekt sichtbar sein soll, müssen Sie möglicherweise' Privat' in 'Öffentlich' ändern. Ich glaube nicht, dass (wie es ist) 'Workbook.Open' in der Lage wäre, diese Variable zu sehen (vorausgesetzt, dass dieser Code in einem Standard-Code-Modul ist). –