Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Excel - VBA Script _ Speichern eines bestimmten Bereiches
Weil hier Aufwand und Nutzen in keiner Relation mehr stehen. Die ersten 3 Zeilen sind nicht gewünscht, da ja erst ab der 4. Kopiert werden soll. Und bezüglich der Massen.....ich bezweifle stark das hier mehr als 100 Zeilen bewegt werden. 1Mio leere Reihen lasse ich nicht gelten, das dauert 2 Sekunden, wenn überhaupt.
Das Hauptproblem momentan ist ja nicht die Range, sondern das Format welches nicht kopiert wird. Man kann natürlich auch Farbe und Spaltenbreite einzeln duplizieren, aber wie gesagt....Aufwand vs. Nutzen ;-)
Hi,
also ich habe noch ein wenig Code zusammengeschustert (Programmieren kann man das in meinem Fall nicht nennen ). Jetzt wird eigentlich alles so kopiert wie ich möchte, nur die Zeile 4 (der Quelldatei), welche in der Quelldatei 30 Pixel hoch ist, ist in der Zieldatei nur noch 18,75 Pixel hoch.
Wenn ihr mir sagt, was da noch verkehrt ist, dann ist alles supi .
Code:
Sub Speichern()
Dim Neue_Datei_Name As String
Dim Diese_Datei_Name As String
Dim Dieses_Blatt As Integer
'Gleich aussteigen wenn hier schon etwas nicht stimmt
Neue_Datei_Name = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe (*.xlsx), *.xlsx")
If Neue_Datei_Name_Suffix = "Falsch" Then Exit Sub
'Diese beiden braucht man für die Range-Aktion weiter unten
Diese_Datei_Name = ActiveWorkbook.Name
Dieses_Blatt = ActiveSheet.Index
'Neue Arbeitsmappe (um einzufügen und so separiert zu speichern)
Workbooks.Add
ActiveWorkbook.SaveAs Neue_Datei_Name
'Eine Zweitverwertung - Abtrennen der Pfadangabe
Neue_Datei_Name = ActiveWorkbook.Name
'Range.Copy to other workbooks
Workbooks(Diese_Datei_Name).Worksheets(Dieses_Blatt).Range("A4:H100").Copy
Workbooks(Neue_Datei_Name).Worksheets("Tabelle1").Range("A1:H100").PasteSpecial Paste:=xlPasteAll
'Range.Copy to other workbooks
Workbooks(Diese_Datei_Name).Worksheets(Dieses_Blatt).Range("A4:H100").Copy
Workbooks(Neue_Datei_Name).Worksheets("Tabelle1").Range("A1:H100").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
'Range.Copy to other workbooks
Workbooks(Diese_Datei_Name).Worksheets(Dieses_Blatt).Range("A4:H100").Copy
Workbooks(Neue_Datei_Name).Worksheets("Tabelle1").Range("A1:H100").PasteSpecial Paste:=xlPasteColumnWidths
End Sub