Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro erweitern

Forumthread: 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
Anzeige

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
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige