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

Makro erweitern

Makro erweitern
Werner
Hallo zusammen,
ich habe das nachfolgende Makro hier in Forum bekommen.
Sub b()
Dim lngCol As Long
For lngCol = Columns("A:A").Column To Columns("W:W").Column Step 2
Tabelle1.Range(Tabelle1.Cells(1, lngCol), Tabelle1.Cells(30, lngCol)).Value = ActiveSheet. _
Range( _
ActiveSheet.Cells(1, lngCol), ActiveSheet.Cells(30, lngCol)).Value
Next
End Sub
Das funzt. super, jedoch hab ich noch zwei Fragen dazu:
1. die Werte sollen zwar von Spalte A-W kopiert werden aber in die Tabelle1 in Spalte B-X eingefügt werden.
Der Rest mit den Zeilen soll bleiben.
2. Wie kann ich die Bereich mischen:
A1:A30 in Tabelle1 B5:B35 kopieren
B10:B30 in Tabelle1 C15:C45 kopieren
usw.
Gruß Werner

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro erweitern
16.09.2010 15:30:13
EvilRik
Hallo Werner,
laut Makro werden die Zeilen 1-30 jeder 2. Spalte im Bereich A-W (also: A1:A30,C1:C30,...) auf dem aktivem Blatt ersetzt durch die Zeilen 1-30 jeder 2. Spalte im Bereich A-W von Blatt Tabelle1. Hier wird jetzt die Variable der Spalte lngCol mit 1 addiert. Also aus 1=SpalteA wird 1+1=SpalteB.

Sub b()
Dim lngCol As Long
For lngCol = Columns("A:A").Column To Columns("W:W").Column Step 2
Tabelle1.Range(Tabelle1.Cells(1, lngCol+1), Tabelle1.Cells(30, lngCol+1)).Value =  _
ActiveSheet. _
Range( ActiveSheet.Cells(1, lngCol), ActiveSheet.Cells(30, lngCol)).Value
Next
End Sub

Um die Bereiche zu variieren, musst du mit entsprechenden Variable arbeiten
(cells(var1,var2) = cells(var1+3,var2+6)
Genau weiß ich nicht, was du möchtest. Hier mal 2 Beispiele, die vielleicht helfen.
Sub KoppiPäist1()
Dim Kopie1 As Range, Einfüge1 As Range
Set Kopie1 = ThisWorkbook.Worksheets("Tabelle1").Range("A1:A30")
Set Einfüge1 = ThisWorkbook.Worksheets("Tabelle2").Range("B5")
Kopie1.Copy Destination:=Einfüge1
End Sub
Sub KoppiPäist2()
Dim wksK As Worksheet, wksP  As Worksheet, Zähler As Integer, nochnZähler As Integer
Set wksK = ThisWorkbook.Worksheets("Tabelle1")
Set wksP = ThisWorkbook.Worksheets("Tabelle2")
For Zähler = 2 To 20 Step 2  ' !!! Jede 2.Spalte
nochnZähler = nochnZähler + 1
wksK.Range(wksK.Cells(1, Zähler), wksK.Cells(30, Zähler))=  _
wksP.Cells(2, nochnZähler)
Next Zähler
End Sub

Gruß Henrik
Anzeige
AW: Makro erweitern
16.09.2010 18:37:12
Werner
Hallo Henrik,
ich bin Begeistert und die Beispiele sind wieder einmal genau was ich gesucht habe.
Der einfache Zusatz "lngCol+1" im ersten Makro und von den beiden Beispielen das erste waren genau das , was ich gesucht habe.
nochmals herzlichen Dank :-) :-)
Gruß Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige