Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
784to788
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
784to788
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
bestimmte Zellen kopieren
26.07.2006 08:15:44
Erich
Hallo EXCEL-Freunde,
habe aus der Recherche einen Code, der in einer Spalte bestimmte Werte sucht
und dann diese sowie danebenliegende Zellen in eine neue Tabelle kopiert:
Sub CellCopy()
Dim Z As Range
For Each Z In Sheets("A_1TM").Range("D212:D231")
If Z.Value = "V" Or Z.Value = "O" Then
Z.Copy
Sheets("Gefunden").Select
Cells(Z.Row, Z.Column).Select
Selection.PasteSpecial Paste:=xlValues
End If
If Z.Value = "V" Or Z.Value = "O" Then
Z(1, -1).Copy
Sheets("Gefunden").Select
Cells(Z.Row, Z.Column - 1).Select
Selection.PasteSpecial Paste:=xlValues
End If
Next
Application.CutCopyMode = False
End Sub

Aus dieser Tabelle:
A_1TM
 ABCD
211 Manschaften  
2121Ried  O
2132Austria Wien  K
2143Mattersburg  V
2154Sturm Graz  V
2165Rheindorf Altach  V
2176Rapid Wien  V
2187FC Superfund Pasching V
2198FC Wacker Tirol  V
2209Salzburg  V
22110Grazer AK  K
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
In diese Tabelle:
Gefunden
 CD
212Ried O
213  
214Mattersburg V
215Sturm Graz V
216Rheindorf Altach V
217Rapid Wien V
218FC Superfund PaschingV
219FC Wacker Tirol V
220Salzburg V
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Jetzt soll beim kopieren erreicht werden, dass keine Leezeilen entstehen;
siehe Zeile 213; also Mattersburg soll direkt unter Ried stehen.
Besten Dank für eine Hilfe!
mfg
Private Tippgemeinschaft für Lotto oder KENO: http://www.kenostrategen.de

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: bestimmte Zellen kopieren
26.07.2006 09:48:39
Klaus-Dieter
Hallo Erich,
versuche es mal so:
Option Explicit
Sub CellCopy() Dim Z As Range Dim lZiel As Long For Each Z In Sheets("A_1TM").Range("D212:D231") If Z.Value = "V" Or Z.Value = "O" Then lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1 Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets("A_1TM").Cells(Z.Row, Z.Column) Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets("A_1TM").Cells(Z.Row, Z.Column - 2) End If Next End Sub
Viele Grüße Klaus-Dieter

Online-Excel
Anzeige
AW: bestimmte Zellen kopieren
26.07.2006 10:05:34
Erich
Hallo Klaus-Dieter,
funktioniert wunderbar! Für folgende Erweiterung müsste es doch eine Schleife geben.
Die Sheetnamen habe ich in der Tabelle "Anzrel" von A2 - A10 aufgelistet. Über
myName1 bis 10 könnten die Namen ermittelt werden und dann untereinander aufgelistet.
Soweit bin ich gekommen; bräuchte noch die Schleife für die Sheetnamen 1 - 10:
Sub aCellCopy() Dim Z As Range Dim lZiel As Long Dim myName1 As String, myName2 As String myName1 = Sheets("Anzrel").Cells(2, 1) myName2 = Sheets("Anzrel").Cells(3, 1) For Each Z In Sheets(myName1).Range("D212:D231") If Z.Value = "V" Or Z.Value = "O" Then lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1 Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets(myName1).Cells(Z.Row, Z.Column) Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets(myName1).Cells(Z.Row, Z.Column - 2) End If Next For Each Z In Sheets(myName2).Range("D212:D231") If Z.Value = "V" Or Z.Value = "O" Then lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1 Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets(myName2).Cells(Z.Row, Z.Column) Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets(myName2).Cells(Z.Row, Z.Column - 2) End If Next For Each Z In Sheets("D_1BL").Range("D212:D231") If Z.Value = "V" Or Z.Value = "O" Then lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1 Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets("D_1BL").Cells(Z.Row, Z.Column) Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets("D_1BL").Cells(Z.Row, Z.Column - 2) End If Next End Sub
Besten Dank nochmal!
mfg
Private Tippgemeinschaft für Lotto oder KENO: http://www.kenostrategen.de
Anzeige
AW: bestimmte Zellen kopieren
26.07.2006 10:37:42
Klaus-Dieter
Hallo Erich,
versuche es mal so:
Option Explicit
Sub CellCopy() Dim Z As Range Dim lZiel As Long Dim vTabArr As Variant Dim iTabe As Integer vTabArr = Sheets("Anzrel").Range("A2:A10").Value For iTabe = 1 To UBound(vTabArr) For Each Z In Sheets(vTabArr(iTabe)).Range("D212:D231") If Z.Value = "V" Or Z.Value = "O" Then lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1 Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets(vTabArr(iTabe)).Cells(Z.Row, Z.Column) Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets(vTabArr(iTabe)).Cells(Z.Row, Z.Column - 2) End If Next Next iTabe End Sub
Ausnahmsweise ist der Quelltext nicht getestet.
Viele Grüße Klaus-Dieter

Online-Excel
Anzeige
AW: bestimmte Zellen kopieren
26.07.2006 10:51:51
Erich
Hallo Klaus-Dieter,
erhalte leider Fehlermeldung:
Laufzeitfehler 9
Index außerhalb des gültigen Bereichs
markiert wird die Zeile:
For Each Z In Sheets(vTabArr(iTabe)).Range("D212:D231")
angezeigt wird mit der Maus:
Z = Nothing
vTabArr = Index außerhalb des gültigen Bereichs
iTabe = 1
Eine Idee?
(hab ein paar Änderungen erfolglos probiert)
Besten Dank!
mfg
Private Tippgemeinschaft für Lotto oder KENO: http://www.kenostrategen.de
AW: bestimmte Zellen kopieren
26.07.2006 10:55:23
Klaus-Dieter
Hallo Erich,
kannst du mir die Tabelle mal per Mail schicken? (Adresse im Profil). Dann teste ich das mal. Dann brauche ich keine Testtabelle basteln.
Viele Grüße Klaus-Dieter

Online-Excel
Anzeige
AW: bestimmte Zellen kopieren
26.07.2006 11:10:39
Erich
Hallo Klaus-Dieter,
Muster losgeschickt.
mfg
Private Tippgemeinschaft für Lotto oder KENO: http://www.kenostrategen.de
AW: bestimmte Zellen kopieren
26.07.2006 11:50:40
Klaus-Dieter
Hallo Erich,
gut, sehe ich mir heute Abend an, sonst gibt es Mecker vom Chef. ;-)
Viele Grüße Klaus-Dieter

Online-Excel
Die Lösung von Klaus-Dieter
26.07.2006 20:10:27
Klaus-Dieter

Private Sub CommandButton1_Click()
Dim Z As Range
Dim lZiel As Long
Dim vTabArr As Variant
Dim iTabe As Integer
vTabArr = Sheets("Anzrel").Range("A2:A10").Value
For iTabe = 1 To UBound(vTabArr)
For Each Z In Sheets(vTabArr(iTabe, 1)).Range("D212:D231")
If Z.Value = "V" Or Z.Value = "O" Then
lZiel = Sheets("Gefunden").Range("D65536").End(xlUp).Row + 1
Sheets("Gefunden").Cells(lZiel, Z.Column) = Sheets(vTabArr(iTabe, 1)).Cells(Z.Row, Z.Column)
Sheets("Gefunden").Cells(lZiel, Z.Column - 1) = Sheets(vTabArr(iTabe, 1)).Cells(Z.Row, Z.Column - 2)
End If
Next
Next iTabe
Sheets("Gefunden").Range("C:D").EntireColumn.AutoFit
End Sub

mfg
Private Tippgemeinschaft für Lotto oder KENO: http://www.kenostrategen.de
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige