Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1340to1344
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA nur Werte und Formate kopieren -- Fehlersuche

VBA nur Werte und Formate kopieren -- Fehlersuche
29.11.2013 14:04:21
WalterK
Hallo,
mit dem folgenden Code möchte ich einen Tabellenbereich in eine neu erstellte Datei kopieren, es sollen aber nur die Werte eingefügt und die Formate übernommen werden, aber keine Formeln.
1.) bei der Zeile PasteSpecial xlPasteValues kommt der Fehler: Fehler beim Kompilieren: Syntaxfehler ---> wo liegt hier der Fehler?
2.) was muss ich ergänzen damit auch die Formate mitübernommen werden?
Sub Datei_anlegen()
Dim wkbName As String, wkbNeu As String, wksName As String
wkbName = ThisWorkbook.Name
wksName = ActiveSheet.Name
Workbooks.Add
wkbNeu = ActiveWorkbook.Name
Workbooks(wkbName).Sheets(wksName).Range("H1:O46").Copy Workbooks(wkbNeu).Tabelle(1).Range("A1") _
.PasteSpecial xlPasteValues.
Dim pfad As String, dateiname As String
pfad = Workbooks(wkbName).Sheets(wksName).Range("G1")
dateiname = Workbooks(wkbName).Sheets(wksName).Range("F1")
Workbooks(wkbNeu).SaveAs Filename:=pfad & "\" & dateiname & ".xls"
ActiveWorkbook.Close
End Sub
Besten Dank für die Hilfe und
Servus, Walter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA nur Werte und Formate kopieren -- Fehlersuche
29.11.2013 14:12:16
EtoPHG
Hallo Walter,
1. Der Punkt nach xlPasteValues muss weg! zudem
2. Die .PasteSpecial Methode kann nicht mit der .Copy Methode zusammenarbeiten. Du musst das trennen:
    Workbooks(wkbName).Sheets(wksName).Range("H1:O46").Copy
Workbooks(wkbNeu).Tabelle(1).Range("A1").PasteSpecial xlPasteValuesAndNumberFormats

Gruess Hansueli

AW: VBA nur Werte und Formate kopieren -- Fehlersuche
29.11.2013 14:22:52
WalterK
Hallo Hansueli,
besten Dank für Deine Hilfe, es werden jetzt die Werte eingefügt.
Könntest Du mir auch noch mit den Formaten weiterhelfen?
Servus, Walter

Ergänzung
29.11.2013 14:33:00
WalterK
Hallo,
mit Formaten meinte ich auch die Hintergrundfarben und die Zellen-Einstellungen Links/Zentriert/Rechts.
Mein Fehler, ich hatte es zu wenig genau mitgeteilt.
Servus, Walter

Anzeige
Also etwa so...
29.11.2013 14:42:33
EtoPHG
Walter,
    With Workbooks(wkbNeu).Worksheets(1)
Workbooks(wkbName).Sheets(wksName).Range("H1:O46").Copy .Range("A1")
.Range("A1:H46").Value = .Range("A1:H46").Value
End With
Gruess Hansueli

Was genau verstehst du unter
29.11.2013 14:38:57
EtoPHG
Formate? Walter
Mein Code fügt die Werte und das Format der Zelle ein.
Nicht aber Formatierungen wie Hintergrundfarbe, Schriftart, -stil etc.
Wenn du ev. eingefügte Formeln in Werte umwandeln willst, mache:
Quelle.Copy Destination
und auf den eingefügten Bereich
Eingefügte.Range(...).Value = Eingefügte.Range(...).Value
Hoffentlich sitzen keine bedingte Formatierungen auf dem Quellbereich ;-)
Gruess Hansueli

Anzeige
Danke Hansueli, du hast ....
29.11.2013 14:43:24
WalterK
... mich auf den richtigen Weg gebracht. Es passt jetzt alles.
Servus, Walter

328 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige