Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1420to1424
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: Kurzschreibweise Zelldaten umschreiben

VBA: Kurzschreibweise Zelldaten umschreiben
22.04.2015 22:54:50
Joerschi
Hallo liebes Forum,
Ich bin absoluter VBA-Anfänger...
Innerhalb eines VBA-Alghoritmus sollen verschiedene Inhalte von Zellen in andere Zellen geschrieben werden.
Dabei handelt es sich um teils ein paar Hundert Zellen horizontal hintereinander.
Bislang kenne ich nur diese Schreibweise, in der man Zelle für Zelle überträgt (was entsprechend lang dauert):

Sub durchlauf()
Z = 10 ' Zielzeile , ab wo automatische Eintragung Ergebnisse beginnt
For i = Sheets("Analyse").Cells(1, 20) To Sheets("Analyse").Cells(1, 22) ' von - bis
Sheets("Analyse").Cells(1, 9) = i  ' aktuelle Bearbeitungszeile
Sheets("Analyse").Cells(Z, 1) = Sheets("Analyse").Cells(8, 2) ' ab hier Werte für Quellbereich ( _
B8:I8), die umgeschrieben werden sollen
Sheets("Analyse").Cells(Z, 2) = Sheets("Analyse").Cells(8, 3)
Sheets("Analyse").Cells(Z, 3) = Sheets("Analyse").Cells(8, 4)
Sheets("Analyse").Cells(Z, 4) = Sheets("Analyse").Cells(8, 5)
Sheets("Analyse").Cells(Z, 5) = Sheets("Analyse").Cells(8, 6)
Sheets("Analyse").Cells(Z, 6) = Sheets("Analyse").Cells(8, 7)
Sheets("Analyse").Cells(Z, 7) = Sheets("Analyse").Cells(8, 8)
Sheets("Analyse").Cells(Z, 8) = Sheets("Analyse").Cells(8, 9)
Z = Z + 1
Next i
End Sub

Ich würde mich freuen, wenn mir jemand weiterhelfen kann, wie man den obigen beispielhaften Quellbereich (B8:I8) und Zielbereich "in kurz" darstellen kann anstatt in jeder Zeile nur eine Zelle...
Danke im Voraus für jede Hilfe und Viele Grüße
Joerschi

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Kurzschreibweise Zelldaten umschreiben
23.04.2015 08:54:19
Jannik
Hier mal ein kurzer Code, der das gleiche macht wie deiner. Ich habe mich vor allem über die For Schleife und das Aufzählen von Z gewundert: Beide Befehle sind meiner Meinung nach nicht nötig für das was du da machen willst... (vor allem da der gleiche Bereich wieder überschrieben wird)
Grüße Jannik
Sub durchlauf()
Z = 10 ' Zielzeile , ab wo automatische Eintragung Ergebnisse beginnt
With Sheets("Analyse")
'.vor den Befehlen bedeutet es bezieht sich auf Sheets Analyse
' Zusammengefasster Bereich        Hier wird nur die erste Zelle angegeben
.Range(.Cells(8, 2), .Cells(8, 9)).Copy Destination:=.Cells(Z, 1)
End With
End Sub

Anzeige
nur Werte kopieren?
24.04.2015 19:41:04
Joerschi
Vielen Dank für die Hilfe.
Beim Austesten habe ich gemerkt, dass ich ungenau war (wie gesagt - Anfänger: wusste nicht, dass das wichtig war).
Statt allen Zelleninhalten sollen nur die Werte kopiert werden (nicht die Formate oder Formel).
Wie könnte man den Teil diesbezüglich noch konkretisieren?:
' Zusammengefasster Bereich Hier wird nur die erste Zelle angegeben
.Range(.Cells(8, 2), .Cells(8, 9)).Copy Destination:=.Cells(Z, 1)
Danke vorab und Liebe Grüße
Joerschi

AW: nur Werte kopieren?
24.04.2015 19:53:49
Daniel
Hi
nur Werte kopieren:
.Range(.Cells(8, 2), .Cells(8, 9)).Copy
.Cells(Z, 1).PasteSpecial xlpasteall
Gruß Daniel

Anzeige
AW: nur Werte kopieren?
24.04.2015 19:57:57
Daniel
Hi
nur Werte kopieren:
.Range(.Cells(8, 2), .Cells(8, 9)).Copy
.Cells(Z, 1).PasteSpecial xlpasteall
Gruß Daniel

AW: nur Werte kopieren?
25.04.2015 20:37:01
Joerschi
Vielen Dank Daniel.
Nicht ganz die Lösung, da statt nur den Werten ALLES kopiert wurde.
Aber statt xlpasteall verwendet man xlPasteValues, wie ich von dieser sehr guten Zusammenfassung gesehen habe.
https://www.herber.de/mailing/vb/html/xlmthpastespecialrangeobj.htm
Danke nochmal für die Hilfe und LG
Joerschi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige