231 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen,

ich habe aus einer Excel Tabelle per Makro (CreateChecklistSEXLSX) eine neue Datei generiert, in die Daten eingegeben werden. Im Anschluss an die Dateneingabe sollen die eingegebenen Werte per Makro (DataImportCHSE) wieder inkl. der Formeln in die Zieldatei übernommen werden. Leider werden bei meinem Makro nur die Werte und nicht die Formeln mit in die Zieldatei übernommen. Was mache ich falsch? Schon mal vielen Dank für eure Hilfe. Gruß Bine1171

Sub CreateChecklistSEXLSX()
'
' CreateChecklistSustainabilityExcellenceXLSX
' Creates an extract of the Sustainability Exellence Checklist as a standalone Excel file for entering the results of the audit.

'
Dim naam
naam = Sheets("Data").Range("C23").Value

Dim Plaats
Plaats = Worksheets("Data").Range("C1").Value
Sheets("Checklist").Select
    Cells.Select
    Selection.Copy
    Workbooks.Add
    Cells.Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveWorkbook.SaveAs Filename:= _
        Plaats & naam & ".xlsx"
    Rows("5:138").Select
    Selection.EntireRow.Hidden = True
    Application.Goto Reference:="R1C1"
    Range("I147:J272").Select
    Selection.Locked = False
    Selection.FormulaHidden = False
    Range( _
        "I139:J141,I146:J146,I150:J150,I187:J188,I200:J200,I206:J206,I219:J220,I224:J224,I231:J232,I236:J236,I240:J240,I242:J242,I246:J246,I250:J250,I256:J256,I261:J261,I264:J264" _
        ).Select
    Range("I264").Activate
   Selection.Locked = True
    Selection.FormulaHidden = False
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="RC2018"
    Application.Goto Reference:="R2C1"
End Sub

Sub DataImportCHSE()
'
' DataImportCHSE Makro
' Data import from Sustainability Checklist to main RC file.

'
   Dim naam
naam = Sheets("Data").Range("C23").Value

Dim Plaats
Plaats = Worksheets("Data").Range("C1").Value
Sheets("Checklist").Select
Workbooks.Open Filename:= _
        Plaats & naam & ".xlsx"
    Range("I142:J265").Select
    Selection.Copy
    Application.DisplayAlerts = False
   ActiveWorkbook.Close SaveChanges:=False
   Application.DisplayAlerts = True
   ActiveWindow.Visible = True
    Sheets("Checklist").Select
    ActiveSheet.Unprotect Password:="RC2018"
   Range("I142").Select
    ActiveSheet.Paste
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="RC2018"
   
End Sub

3 Antworten

+1 Punkt
Beantwortet von m-o Profi (22.8k Punkte)

Hallo Bine1171,

also eigentlich sollten die Formeln mit übernommen werden. Sind denn in der Datei, aus der du die Daten kopierst die Formeln vorhanden?

Ich habe das Makro mal etwas gestrafft:

Sub DataImportCHSE()
'
' DataImportCHSE Makro
' Data import from Sustainability Checklist to main RC file.

'
Dim naam
Dim Plaats

With Worksheets("Data")
 naam = .Range("C23").Value
 Plaats = .Range("C1").Value
End With

With Worksheets("Checklist")
  .Unprotect Password:="RC2018"
End With

Workbooks.Open Filename:=Plaats & naam & ".xlsx"
'Daten kopieren
Range("I142:J265").Copy Destination:=ThisWorkbook.Worksheets("Checklist").Range("I142")
    
Application.DisplayAlerts = False
ActiveWorkbook.Close SaveChanges:=False
Application.DisplayAlerts = True
 
With ThisWorkbook.Worksheets("Checklist")
   .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="RC2018"
   .Activate
End With
 
End Sub

Gruß

M.O.

0 Punkte
Beantwortet von bine1171 Einsteiger_in (6 Punkte)
@ M.O.

Danke!!!! Das hat funktioniert und mir echt geholfen!!!!

Viele Grüße und schöne Osterfeiertage
Bine1171
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo Bine1171,

vielen Dank für die Rückmeldung und auch ich wünsche dir schöne Feiertage.

Gruß

M.O.
...