Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1352to1356
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

ExecuteExcel4Macro Formatierung kopieren

ExecuteExcel4Macro Formatierung kopieren
20.03.2014 11:56:47
Fabian
Hallo zusammen,
ich möchte mit meinem Code Daten aus anderen Tabellen in eine kopieren. Dazu nutze ich ExecuteExcel4Macro. Funktioniert sehr gut. Problem: ich würde gerne auch die Formatierungen mit kopieren. Geht das irgendwie ohne die Quell-Arbeitsmappen zu öffnen?
Sub Tabelle_fuellen()
Dim Adresse As String
Dim QuellZeile As Integer
Dim ZielZeile As Integer
Dim Spalte As Integer
Dim Wert As Variant
Dim QuellenNr As Integer
QuellenNr = 2
Adresse = Worksheets("Quellen").Cells(QuellenNr, 4).Value
Spalte = 2
QuellZeile = 7
ZielZeile = 7
'Loop durch Quelltabellen bis Adresse leer
Do Until Adresse = Empty
'Loop durch Quelltabelle bis "Eintrag" leer
Do Until Spalte = 3 And Wert = Empty
'Zelle aus Quelltabelle kopieren
Wert = ExecuteExcel4Macro(Adresse & Cells(QuellZeile, Spalte).Address(ReferenceStyle:=  _
_
xlR1C1))
If Wert = Empty Then
Cells(ZielZeile, Spalte).Value = ""
Else
Cells(ZielZeile, Spalte).Value = Wert
End If
'nächste Zelle oder Zeile
If Spalte = 14 Then
Spalte = 2
QuellZeile = QuellZeile + 1
ZielZeile = ZielZeile + 1
Cells(ZielZeile, 1).EntireRow.Insert
Else
Spalte = Spalte + 1
End If
Loop
'nächste Quelle
QuellenNr = QuellenNr + 1
Adresse = Worksheets("Quellen").Cells(QuellenNr, 4).Value
QuellZeile = 7
Wert = "platzhalter"
Loop
'letzte hinzugefefügte (leere) Zeile löschen
Cells(ZielZeile, 1).EntireRow.Delete
End Sub

Danke für eure Hilfe!
Fabian

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ExecuteExcel4Macro Formatierung kopieren
20.03.2014 12:48:17
Rudi
Hallo,
denkbar wäre, die Zellformat per Zelle.Zuordnen (Get.Cell) auszulesen. Das musst du aber für jede Formatierungsoption (Schriftart, Farbe, Rahmen...) einzeln machen. Vermutlich führt das zu ewigen Laufzeiten.
Ich würde die Mappe öffnen.
Gruß
Rudi

AW: ExecuteExcel4Macro Formatierung kopieren
20.03.2014 13:04:03
Fabian
klingt gar nicht so schlecht, weil es mir hauptsächlich um die Hintergrundfarbe geht. Wie würde der Quelltext dafür dann aussehen?

AW: ExecuteExcel4Macro Formatierung kopieren
20.03.2014 13:24:41
Rudi
Hallo,
Farbe = ExecuteExcel4Macro("Get.Cell(63," & Adresse & Cells(QuellZeile, Spalte).Address( _
ReferenceStyle:=xlR1C1) & ")")
Cells(...).Interior.ColorIndex = Farbe

Gruß
Rudi

Anzeige
AW: ExecuteExcel4Macro Formatierung kopieren
20.03.2014 13:53:45
Fabian
funktioniert leider nicht: "Laufzeitfehler 13 - Typen unverträglich"
Und ja, ich hab die 3 Punkte zwischen den Klammern ersetzt ;-)

...und warum nicht die Farbe direkt kopieren? orT
20.03.2014 14:14:23
Luc:-?
Warum der Umweg über Get.Cell?
Gruß Luc :-?

deshalb:
20.03.2014 14:27:45
Rudi
Hallo,
Geht das irgendwie ohne die Quell-Arbeitsmappen zu öffnen?
warum auch immer...
Gruß
Rudi

Achso, aber die wird ja trotzdem geöffnet, ...
20.03.2014 23:36:47
Luc:-?
…auch wenn das unbemerkbar ist, nur die Routine dafür ist schon fertig… ;-)
Gruß Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige