Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Datenübertragen mit VBA-Excel



Excel-Version: 9.0 (Office 2000)

Betrifft: Datenübertragen mit VBA-Excel
von: Ernst Dunkel
Geschrieben am: 09.06.2002 - 16:16:22

Hallo Leute

In meiner Arbeitsmappe befinden sich mehrere Erfassungsblätter, alle mit gleichem Aufbau. Gewisse Daten werden in ein Sammelblatt per CommandButton übertragen. Diese zu übertragenden Daten befinden sich in Zeile 100 (A100 bis F100) in Form eines Bezugs, z.B. in Zelle A100 steht =A5.
Mein Makro funktioniert nur, wenn z.B. in Zelle A100 ein absoluter Wert, z.B. 100 steht, steht jedoch anstelle 100 eine Formel z.B. =A5, so funktioniert die Datenübertragung nicht so wie ich mir das wünsche.

Bitte schaut mal mein Makro an, es ist unten aufgeführt und lasst mich wissen, was ich richtig machen muss.

Für Bemühungen danke ich im voraus.

'*** Mehrere Daten aus Tabellenblätter auf ein Sammelblatt übertragen***
Sub Uebertragen()

' Variablendeklaration
Dim intCounter%, intRow%

' Daten ab Zeile 5 einfügen)
intRow = 5

' Schleife ab dem 4. Arbeitsblatt
For intCounter = 4 To Worksheets.Count

' Bereich kopieren
Worksheets(intCounter).Range("A100:F100").Copy

' Daten einfügen
Worksheets("Sammelblatt").Paste _
Destination:=Worksheets("Sammelblatt").Cells(intRow, 1)

' Zeilenzähler hochzählen
intRow = intRow + 2
Next intCounter

End Sub

  

Re: Datenübertragen mit VBA-Excel
von: Philip
Geschrieben am: 09.06.2002 - 16:25:34

Hallo Ernst,
Ich glaube du solltest 1 PasteSpecial machen...


' Daten einfügen
...
Selection.PasteSpecial Paste:=xlPasteValues
...

Nicht getestet.
Gruß
Philip

  

Re: kann es nicht
von: Ernst Dunkel
Geschrieben am: 09.06.2002 - 18:07:39

Hallo Philip

das mit dem PasteSpecial, habe ich nicht ganz versanden.
Kannst Du mir den Code, ab 'Daten einfügen, genau angeben.


Gruss Ernst


  

Re: kann es nicht
von: WernerB.
Geschrieben am: 09.06.2002 - 18:30:21

Hallo Ernst,

versuche mal folgendes:

Ersetze Deine Code-Zeilen:
Worksheets("Sammelblatt").Paste _
Destination:=Worksheets("Sammelblatt").Cells(intRow, 1)

durch diese Code-Zeilen:
Worksheets("Sammelblatt").Range("A" & intRow & ":F" & intRow).PasteSpecial _
Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

Es werden dann nur die Werte kopiert, auch wenn Formeln in den Zellen stehen.


Viel Erfolg wünscht
WernerB.

  

Re: kann es nicht
von: Ernst Dunkel
Geschrieben am: 09.06.2002 - 19:40:43

Hallo Werner

Zuerst wollte es nicht klappen, dann habe ich probiert und geübt.

Habe den Code abgeändert. Anstelle ("A" & intRow & ":F" & int Row)

Auf ("A" & intRow)

Dann klappte es.

Ich danke Dir für Deine Bemühungen.


Gruss Ernst