mhh das ist doch genau das was bei mir auch steht oder?
schauan
Hallöchen,
Das ist immer noch eine Zeile ...
Bei mir steht
If Range("C14") = Ja Then Dateiname = Dateiname & " rekla"
Dateiname = Dateiname ".xlsx"
Bekomme immer eine Fehlermeldung: Fehler beim komprimieren.
wenn du schon mein beispiel nimmst, dann aber auch richtig.
sofern Ja ausgewählt wird er komplette Pfad in die Variable Dateiname geschrieben im format z.b. "\ordner\ ordner rekla\dateiname.xlsx"
deshalb darf der Pfad dann nicht extra noch vor den Dateinamen geschrieben werden beim save
If Range("C14") = Ja Then
Dateiname = Left(Pfad,Len(Pfad) -1) & " rekla\" & Dateiname & ".xlsx"
else
Dateiname = Pfad & Dateiname & ".xlsx"
end if
...ActiveWorkbook.SaveAs Filename:=Dateiname, File.......
*hüstel*
Wobei die zweite Zeile Quatsch ist, wie ich oben schon schrieb.
Die Dateiendung braucht nicht angehangen werden, sondern wird durch
FileFormat:=xlOpenXMLWorkbook als .xlsx vorgegeben.
Warum Ralf_b gelöscht hat, weiß ich nicht, aber ich kann es gerne wiederholen:
Da Dir absolutes Grundlagenwissen fehlt (Du nicht weißt, was der Unterschied zwischen einer und zwei Programmzeilen ist), solltest Du die Finger von der betrieblichen Verwendung von VBA lassen!
Was machst Du, wenn Dein Programm im Betrieb abraucht?
Ein Forum konsultieren?
Zitat:Fehler beim komprimieren.
Ist mir letztens auch passiert!
Da ist die Fahrradpumpe vom Ventil gerutscht.
Hallöchen,
bei Dir steht
Zitat: If Range("C14") = Ja Then Dateiname = Dateiname & " rekla" Dateiname = Dateiname ".xlsx"
wenn ich da anfange die Zeilen zu zählen komme ich nicht weiter als bis 1, und ich kann weiter als bis 3
dann nochmal alle 3 Zeilen ...
Code:
Dateiname = Range("H4") & "_" & "Index" & "_" & Range("M4") & "_" & Range("C4") & "_" & Range("C8") & "_" & Range("c6") & "_" & Range("M6")
If ... Then Dateiname = Dateiname & " rekla"
Dateiname = Dateiname ".xlsx"
In der ersten Zeile hast Du wieder .xlsx am Ende,
Debug... hab ich mal weggelassen
Deine Zeile mit dem If sieht deutlich anders aus als meine
Meine nächste Zeile fehlt, dafür hast Du ein End If, was da nicht hin gehört ...
Hi
Ja ich hab kein blassen Dunst davon aber deswegen bin ich ja hier, oder was für Fragen stellt man sonst in einem Forum
Also ich hab es jetzt so aber es kommt die Meldung Fehler beim komprimieren- Erwarte Anweisungsende
Private Sub CommandButton1_Click()
Const Pfad As String = "M:\70_QMS\120_Prüfprotokolle 2021\"
Dim Dateiname As String
If Range("C4") = "" Or Range("H4") = "" Or Range("M4") = "" Or Range("C8") = "" Or Range("C6") = "" Or Range("M6") = "" Then MsgBox "Alle Felder ausfüllen!": Exit Sub
Application.DisplayAlerts = False ' Warnmeldung ausschalten
' Zeichnungsnummer_Index+IndexNr_Bestellnummer_Lieferant_WEDatum
' Zeichnungsnummer_Index (H4)
' IndexNr (M4)
' Bezeichnung (C4)
' Bestellnummer (C8)
' Lieferant (C6)
' WEDatum (M6)
Dateiname = Range("H4") & "_" & "Index" & "_" & Range("M4") & "_" & Range("C4") & "_" & Range("C8") & "_" & Range("c6") & "_" & Range("M6")
If Range("C14") = "Ja" Then Dateiname = Dateiname & "rekla"
Dateiname = Dateiname".xlsx"
ActiveWorkbook.SaveAs Filename:=Pfad & Dateiname, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Application.DisplayAlerts = True ' Warnmeldung einschalten
ActiveSheet.Shapes.Range(Array("CommandButton1")).Delete
End Sub
Hallöchen,
Sorry, da fehlt noch ein &
Dateiname = Dateiname & ". xlsx"
Perfekt jetzt geht es
Vielen vielen Dank für die Hilfe!!
LG