ich habe mir ein makro geschrieben was folgendes auslösen soll.
In der Datei report_vorlage werden Daten eingegeben. Diese werden durch das Makro in der Datei report_daten gespeichert.
Jetzt wird die datei report_vorlage unter anderen namen ( report& der wert aus K6)gespeichert.
Der in der Datei report_vorlage vorhandene und dementsprechend mitgespeicherte button wird in der kopie gelöscht und die datei report_vorlage geschlossen.
die datei report& wert aus K6 ist nun zur weiteren Bearbeitung bereit.
Soweit, so gut.
bis hierhin funktioniert auch alles.
Zusätzlich möchte ich das beim schließen der Datei report_vorlage der Wert in k3 um 1 erhöht wird und die Daten in D7:D9 entfernt werden.
Sub daten_speichern_und_kopie_anlegen()
Dim wsKopie As Worksheet, wsBasis As Worksheet, iLetzte As Long
Dim wbKopie As Workbook
Set wsBasis = ActiveSheet
Set wbKopie = Workbooks.Open("C:\Report-Test\Report_daten.xlsx") 'Zieldatei anpassen
Set wsKopie = wbKopie.Sheets("sheet1") 'Tabellennamen der Quelle anpassen
iLetzte = wsKopie.Cells(wsKopie.Rows.Count, 1).End(xlUp).Row + 1
wsKopie.Range("A" & iLetzte) = wsBasis.Range("K3").Value '1.Wert Ziel und 2.Wert Quellzelle _
_
anpassen
wsKopie.Range("B" & iLetzte) = wsBasis.Range("K6").Value
wsKopie.Range("C" & iLetzte) = wsBasis.Range("D6").Value
wsKopie.Range("D" & iLetzte) = wsBasis.Range("D7").Value
wsKopie.Range("E" & iLetzte) = wsBasis.Range("D8").Value
wsKopie.Range("F" & iLetzte) = wsBasis.Range("D9").Value
wsKopie.Range("G" & iLetzte) = wsBasis.Range("K7").Value
wsKopie.Range("H" & iLetzte) = wsBasis.Range("K8").Value
wsKopie.Range("I" & iLetzte) = wsBasis.Range("L9").Value
wbKopie.Save
wbKopie.Close False
ActiveWorkbook.SaveAs Filename:="C:\Report-Test\Report\" & "8D-Report-" & Range("K3").Value & ". _
_
xls" 'speichern unter
ActiveSheet.Shapes("Button 1").Select
Selection.Delete 'Schaltfläche löschen
ActiveWorkbook.Save 'speichern
End Sub
Vieleicht hat ja jemand von den Experten einen Tip für mich, weil sich meine VBA künste eher auf copy&paste beschränken.Danke & Gruß,
Jochen