ich verzweifle mit dem Speichern von Arbeitsblättern eines Workbooks
Dafür habe ich eine Sub die drei Parameter übergeben bekommt und zwar den Pfad, den Dateinamen und das Arbeitsblatt das gespeichert werden soll.
Der Code Aufruf der Sub sieht so aus (ich arbeite nur mit Option Explizit, die Variablen sind alle deklariert):
strDateiName = Month(Me.txbDatum) & "_" & Day(Me.txbDatum) & "_" & Year(Me.txbDatum) & "_" & Left(Me.txbTitel, 10) & "Deckblatt"
strArbeitsblatt = "Vorlage Deckblatt"
strPfad = ThisWorkbook.Path & "\" & "Deckblaetter" & "\"
Call TabelleAlsDateiSpeichern(ByVal strDateiName, ByVal strArbeitsblatt, ByVal strPfad)
~f~
Die sub sieht dann so aus:
~f~
<pre>Public Sub TabelleAlsDateiSpeichern(strFileName As String, strSheetName As String, strPath As String)
'Dim strPfad As String
Dim wksBlatt As Worksheet
Dim wkbZiel As Workbook
Dim strDateiName, strBlattName, strPfad As String
strDateiName = strFileName
strBlattName = strSheetName
strPfad = strPath
'strDatum = Month(datDatum) & "_" & Day(datDatum) & "_" & Year(datDatum)
'strName = ThisWorkbook.Name
Application.ScreenUpdating = False
'strPfad = ThisWorkbook.Path & "\" & strOrdner & "\"
If Dir(strPfad, vbDirectory) = "" Then
MkDir strPfad
End If
Set wksBlatt = Workbooks(strDateiName).Worksheets(strBlattName)
wksBlatt.Copy
Set wkbZiel = ActiveWorkbook
Application.DisplayAlerts = False
wkbZiel.SaveAs (strPfad & strDateiName & ".xlsx")
Application.DisplayAlerts = True
wkbZiel.Close savechanges:=False
Application.ScreenUpdating = True
End Sub</pre>
Ich bekomme immer einen Fehler "Typen unverträglich".
Mein erster Versuch war ohne das ByVal, da habe ich die Meldung bekommen ByRef ist unverträglich
Kann mir bitte jemand helfen?
Vielen Dank
Klaus