Hallo,
entschuldige, mir kam leider was dazwischen und mit den Teilen aus der Formularleiste komme ich nicht klar. :20:
Da bringe ich es nicht fertig einen funktionierenden Code zu schreiben. :22:
Zu deinen Code habe ich zwei Anmerkungen
Code:
With ActiveSheet
.Shapes(Application.Caller).Delete
.UsedRange.Value = .UsedRange.Value
End With
With ThisWorkbook
.SaveAs varPath, 51
.Close False
Mit .Shapes(Application.Caller).Delete löschst Du den Button, wo eigentlich diesen Code aufruft. Das halte ich nicht für gut. Darum habe ich ja die Zeitverzögerung bei meinen Code eingebaut.
Mit With ThisWorkbook.Close schließt Du die Datei, in der der Code steht. Versuche es mal mit ActiveWorkbook.Close
(29.05.2015, 20:12)Steffl schrieb: [ -> ]Mit .Shapes(Application.Caller).Delete löschst Du den Button, wo eigentlich diesen Code aufruft. Das halte ich nicht für gut. Darum habe ich ja die Zeitverzögerung bei meinen Code eingebaut.
Mit With ThisWorkbook.Close schließt Du die Datei, in der der Code steht. Versuche es mal mit ActiveWorkbook.Close
danke Steffl !
hab es mit ActiveWorkbook probiert :
Code:
With ActiveSheet
.Shapes(Application.Caller).Delete
.UsedRange.Value = .UsedRange.Value
End With
With ActiveWorkbook
.SaveAs varPath, 51
.Close False
hat sich nix geändert,selbe wie bei ThisWorkbook code, dokument wird nach abspeichern geschlossen und excel startet neu ohne inhalt.
Die neu gespeicherte Dokument ist genau so wich ich es haben will, ohne makro und button und die restlichen tabellen.
In der Orginal Dokument sollen ja die Buttons und Makros erhalten bleiben nur nicht in der abgespeicherten.
was jetzt noch stört ist das beim abspeichern das dokument geschlossen wird.
gruss
Suphi
Hallo,
ich habe zwei Codes eingestellt, die bei mir ohne Probleme funktionieren. Warum probierst Du die nicht mal aus????
Hallo,
entferne mal das Close.
(29.05.2015, 21:01)BoskoBiati schrieb: [ -> ]Hallo,
ich habe zwei Codes eingestellt, die bei mir ohne Probleme funktionieren. Warum probierst Du die nicht mal aus????
die funktionieren bei mir nicht, bekomme Laufzeitfehler 1004 diese erweiterung kann nicht mit dem ausgewählten Dateitype verwendet werden...
wie hast du es getestet, mit der hochgeladene datei ?
gruss
Suphi
Hallo,
habe mal meinen Code auf die Teile aus der Formularleiste geändert.
(29.05.2015, 21:22)Steffl schrieb: [ -> ]Hallo,
habe mal meinen Code auf die Teile aus der Formularleiste geändert.
hallo Steffl,
warum wird das offene dokument geschlossen und in das gespeicherte gewechselt ?
wiso kann ich nicht auswählen wohin ich es gespeichert haben möchte,er speichert es unter der selben name ab.
wenn diese zwei sachen gelöst werden können bin ich glücklich..
gruss
Suphi
Hallo,
weil ich das bisher nicht berücksichtigt habe, komme aber heute nicht dazu das zu ändern.
Hallo,
so geht´s auch in Deiner Datei. Die Function kannst Du löschen!
Code:
Sub Speichern01()
Dim Verzeichnis As String
Dim SaveDummy As Variant
Dim strDatei As String
Dim Save_Dateiname As String
Dim loLastRow As Long
Dim logefneu As Double
loLastRow = Cells(Rows.Count, 1).End(xlUp).Row
logefneu = WorksheetFunction.CountA(Range(Cells(1, 1), Cells(loLastRow, 21)))
If logefneu <> loGef Then
strDatei = ThisWorkbook.Path & "\Test_Makros.xlsm"
Application.DisplayAlerts = False
Application.ScreenUpdating = False
ThisWorkbook.Save
SaveDummy = InputBox("Speicherort angeben:", Speicherort)
Save_Dateiname = InputBox("Dateinamen ohne Endung angeben", Dateiname)
SaveDummy = SaveDummy & "\" & Save_Dateiname
If SaveDummy <> "" Then
ThisWorkbook.SaveAs Filename:=SaveDummy & ".xlsx", FileFormat:=xlOpenXMLWorkbook
'ThisWorkbook.SaveAs Filename:="X:\Excel Dateien\Test_Makros_3.xlsx", FileFormat:=xlOpenXMLWorkbook, ConflictResolution:=xlLocalSessionChanges
End If
Workbooks.Open strDatei
ThisWorkbook.Close savechanges = True
(30.05.2015, 13:50)BoskoBiati schrieb: [ -> ]so geht´s auch in Deiner Datei. Die Function kannst Du löschen!
Leider funktioniert der Code nicht,hast du noch paar Codezeilen vergessen ?
gruss
Suphi