Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Daten aus Blatt in neue Mappe kopieren

Daten aus Blatt in neue Mappe kopieren
17.02.2023 10:28:00
denpei
Hallo zusammen, ich bastle an einem Code und komme gerade nicht weiter damit.
Das Ziel
Aus zwei verschiedenen Blättern einer Arbeitsmappe möchte ich gerne zwei neue Dateien mit entsprechendem Inhalt (jedoch nur Werte und Formatierung) erzeugen, die im weiteren Verlauf an eine Email angehängt werden sollen. Probleme bereitet mir nur der Teil des Codes, mit dem die Dateien erzeugt werden.
Der Ablauf:
- Inhalt aus geschützter Tabelle1 (A1:J35) kopieren (daher Blattschutz temporär aufheben)
- Nur Werte und Formatierung ohne Formeln in Tabelle16 einfügen
- Tabelle16 als neue Datei speichern
Das Gleiche dann nochmal mit Tabelle15 (s. Code u.).
Das Ergebnis
Beide Dateien werden erstellt. Die erste Datei ist inhaltlich korrekt. Die zweite Datei enthält jedoch die Werte aus der Quelle der ersten Datei und kurioser weise die Formatierung aus der Quelle der zweiten...?!
Was mache ich falsch?
Falls jemand sonst noch einen Tipp hat den Code effizienter zu machen, wäre ich sehr dankbar dafür.

Dim strDatei As String
Dim strDatei2 As String
Dim strPfad As String
Set outApp = CreateObject("Outlook.Application")
Set Mail = outApp.CreateItem(0)
    strPfad = "C:\Users\Public"
    With Tabelle1
        .Unprotect
        .Range("A1:J35").Copy
        .Paste Destination:=Tabelle16.Cells(1)
        .Protect
    End With
    With Tabelle16
        .UsedRange.Value = ActiveSheet.UsedRange.Value
        .Copy
    End With
    ActiveWorkbook.SaveAs strPfad & "\" & "Bestellung"
    strDatei = ActiveWorkbook.FullName
    Workbooks("Bestellung.XLSX").Close SaveChanges:=False
    With Tabelle15
        .Unprotect
        .Range("A1:H14").Copy
        .Paste Destination:=Tabelle17.Cells(1)
        .Protect
    End With
    With Tabelle17
        .UsedRange.Value = ActiveSheet.UsedRange.Value
        .Copy
    End With
    ActiveWorkbook.SaveAs strPfad & "\" & "Transportauftrag"
    strDatei2 = ActiveWorkbook.FullName
    Workbooks("Transportauftrag.XLSX").Close SaveChanges:=False

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Blatt in neue Mappe kopieren
17.02.2023 11:00:00
Rudi
Hallo,
um zu kopieren musst du den Schutz nicht aufheben.
Teste mal:
  Dim strDatei As String
  Dim strDatei2 As String
  Dim strPfad As String
  
  Set outApp = CreateObject("Outlook.Application")
  Set Mail = outApp.CreateItem(0)
  strPfad = "C:\Users\Public\"
  
  Tabelle1.Range("A1:J35").Copy
  With Tabelle16
    .Cells(1, 1).PasteSpecial xlPasteValues
    .Cells(1, 1).PasteSpecial xlPasteFormats
    .Copy
  End With
  
  With ActiveWorkbook
    .SaveAs strPfad & "Bestellung", xlOpenXMLWorkbook
    strDatei = .FullName
    .Close SaveChanges:=False
  End With
  
  Tabelle15.Range("A1:H14").Copy
  With Tabelle17
    .Cells(1, 1).PasteSpecial xlPasteValues
    .Cells(1, 1).PasteSpecial xlPasteFormats
    .Copy
  End With
  
  With ActiveWorkbook
    .SaveAs strPfad & "Transportauftrag", xlOpenXMLWorkbook
    strDatei2 = .FullName
    .Close SaveChanges:=False
  End With
Gruß
Rudi
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige