AW: ...kleine Optimierung
06.05.2020 20:47:06
Martin
Hallo Frank,
da kannst du den identischen Code verwenden. Jedoch sollte man es vermeiden identische Codes zu verwenden, um nachträgliche Änderungen nicht an unzähligen Stellen im Code vornehmen zu müssen und eine gewisse Übersichtlichkeit zu bewahren. Deshalb habe ich den Code in ein separates Makro ausgelagert und lediglich mit Call SetDirectory auf dieses Makro verwiesen:
Private Sub CommandButton1_Click()
Dim Datei As Variant
Dim myShell As Object
Call SetDirectory
Datei = Application.GetOpenFilename("PDF-Dateien (*.pdf), *.pdf")
Set myShell = CreateObject("Shell.Application")
myShell.Open Datei
End Sub
Dim fso As Object
Dim txt As Object
Dim z As Integer
Dim s As Integer
Dim temp As String
Dim datName As Variant
'TabEinAus exportieren
TabEinAus:
Call SetDirectory
datName = Application.GetSaveAsFilename("DatensaetzeEinAus.txt", filefilter:="Textdateien (* _
.txt), *.txt")
'If datName = False Then GoTo TabJahresbrutto
Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.CreateTextFile(datName, True)
Sub SetDirectory()
With Application
If ActiveCell.Text Empty And Dir(ActiveCell.Text) "" Then
ChDrive ActiveCell.Text & .PathSeparator
ChDir ActiveCell.Text
Else
ChDrive .DefaultFilePath & .PathSeparator
ChDir .DefaultFilePath
End If
End With
End Sub
Viele Grüße
Martin