Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1276to1280
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
Zellen mit VBA kopieren
Andy
Hallo zusammen,
wie kann ich mit VBA den Inhalt von mehreren Zelle in andere verbundene Zellen kopieren?
Quelle: A1-A10
Ziel: verbundene Zellen (B-D): B1-B10
Bisher habe ich das für eine Zelle so gemacht. MIt dem Macrorekorder kann ich das leider nicht aufzeichnen, da kommt immer eine Fehlermeldung, da die Zellen unterschiedlich sind.
Kopiert werden soll nur der Textinhalt. Sub copy() Range("A1").Select Application.CutCopyMode = False Selection.copy Range("B1").Select ActiveSheet.Paste Range("A2").Select Application.CutCopyMode = False Selection.copy Range("B2").Select ActiveSheet.Paste End Sub
Gruß Andy

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellen mit VBA kopieren
04.09.2012 20:48:51
fcs
Hallo Andy,
wie willst du das denn am Ende machen?
Willst du den Zellbereich markieren, deren Inhalte zusammengefasst werden sollen, und während der Makroausführung dann die Zelle wählen können, in die der Inhalt eingefügt wird?
Oder willst du mehrere Zellbereiche nacheinander systematisch abarbeiten?
Gruß
Franz

AW: Zellen mit VBA kopieren
04.09.2012 20:54:45
Andy
Hallo Franz,
ich möchte gerne den Inhalt von A1-A10 fest nach B1-B10 kopieren.
quasi
A1-A10 copy
B1-B10 paste (als Text)
Gruß Andy

AW: Inhalte Zellbereich in eine Zelle kopieren
04.09.2012 21:37:40
fcs
Hallo Andy,
hier meine Lösung.
Den Trenntext zwischen den Zelltexten muss du im Code anpassen.
Gruß
Franz
Sub Copy_A1A10_nach_B1B10()
On Error GoTo Beenden
With ActiveSheet
Call Copy_merged_text(rngZellen:=.Range("A1:A10"), _
rngTarget:=.Range("B1:B10"), _
strSep:=Chr(10), bolLeer:=True) 'Chr(10) = Zeilenschaltung als Trenntext
End With
Beenden:
End Sub
Sub Copy_merged_text(rngZellen As Range, rngTarget As Range, _
Optional strSep As String = "", _
Optional bolLeer As Boolean)
'Text in den Zellen des Zellbereichs wird in die Zielzelle eingefügt
'rngZellen = Zellbereich mit den Texten, die zusammengefast werden sollen
'rngTarget = Zelle in die zusammengefasster Text eingefügt werden soll
'strSep =    optionaler Trenntext zwischen den Zellinhalten - Vorgabe = Leerstring
'bolLeer =   Option wie Zellen mit Leerstring behandelt werden sollen, _
bei True werden Leerstrings in Text übernommen
Dim strText As String
Dim rngZelle As Range
For Each rngZelle In rngZellen.Cells
With rngZelle
If .Text  "" Or (.Text = "" And bolLeer = True) Then
strText = strText & IIf(strText = "", "", strSep) & .Text
End If
End With
Next rngZelle
rngTarget.Range("A1").Value = strText
End Sub

Anzeige
AW: Zellen mit VBA kopieren
04.09.2012 20:55:28
Matthias
Hallo

Range("A1:A10").Copy
Range("B1:B10").PasteSpecial xlPasteFormulas
Application.CutCopyMode = False
Gruß Matthias

AW: Zellen mit VBA kopieren
04.09.2012 21:00:21
Andy
Hallo Matthias,
Deine Lösung funktioniert. Danke zuerst einmal.
Habe noch eine Frage dazu: Wofür steht
Application.CutCopyMode = False
Gruß Andy

AW: Zellen mit VBA kopieren
04.09.2012 21:06:45
Matthias
Hallo

Range("A1:A10").Copy
With Range("B1:B10")
.PasteSpecial xlPasteFormulas
.Value = .Value
End With
Application.CutCopyMode = False

Tabelle1
verbundene Zellen B:D
im Zielbereich wird dann die Frml in Werte umgewandelt


 ABCD
111
222
333
444
555
666
777
888
999
101010

Formeln der Tabelle
ZelleFormel
A1=ZEILE()
A2=ZEILE()
A3=ZEILE()
A6=ZEILE()
A7=ZEILE()
A8=4+4
A9=ZEILE()
A10=ZEILE()


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
wofür steht Application.CutCopyMode = False
Lass es mal weg, dann siehst Du es ;-)
Gruß Matthias

Anzeige
Danke!
04.09.2012 21:11:20
Andy
Danke,
CutCopyMode = Kopiermodus abschneiden... naja, wer lesen kann ist klar im Vorteil ;-)

;-) Bitte ... owT
04.09.2012 21:12:54
Matthias

noch ne kleine Frage
04.09.2012 21:17:01
Andy
Hab noch ne kleine Frage:
ist es auch möglich den Inhalt von A1 + B1 zu kopieren und ihn in C1 als
=A1&" - "&B1

einzufügen?
Gruß Andy

ich denke B:D sind verbunden, doch nicht ?
04.09.2012 21:31:38
Matthias
Hallo
Dim X&
For X = 1 To 10
Cells(X, 3) = Cells(X, 1) & "-" & Cells(X, 2)
Next
Tabelle1

 ABCDE
1A1A-1
2B2B-2
3C3C-3
4D4D-4
5E5E-5
6F6F-6
7G7G-7
8H8H-8
9I9I-9
10J10J-10

Formeln der Tabelle
ZelleFormel
B1=ZEILE()
B2=ZEILE()
B3=ZEILE()
B4=ZEILE()
B5=ZEILE()
B6=ZEILE()
B7=ZEILE()
B8=ZEILE()
B9=ZEILE()
B10=ZEILE()


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Matthias

Anzeige
nur vom Prinzip her
04.09.2012 22:36:24
Andy
@Matthias,
die zweite Frage war nicht auf das Beispiel bezogen. Ich wollte dies nur grundsätzlich mal wissen.
Danke für die Unterstützung.
Gruß Andy

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige