Anzeige
Archiv - Navigation
1380to1384
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

Wertebereich suchen und kopieren

Wertebereich suchen und kopieren
29.09.2014 15:25:04
stormlamp
Hallo Zusammen,
In Tabellen1 ziehe ich aus anderen Tabellen über Formeln Werte zusammen. Dabei sind in Tabelle1 soviele Zeilen mit Formeln gefüllt, wie maximal zusammenkommen können.
Nun möchte ich per Makro den Bereich, der tatsächlich Werte enthält ans Ende von Tabelle2 übertragen. In Spalte E enthält die erste nicht gefüllte Zelle ein #NV, das ich Suche.
Dann kommt der Teil, der mir Probleme macht. Ich muss einen Bereich markieren, ausgehend von der gefundenen #NV-Zelle eine Zeile hoch und 6 Spalten nach rechts, von dort aus zurück bis A2.
Diesen markierten Bereich kopiere ich dann in die erste leere Zelle in Spalte A der Tabelle 2 und springe zurück in Tabelle1.
Hier das Script in dem mir nur noch die Bereichsdefinition fehlt.
Wie muss ich diese Definition richtig schreiben?
Sub Bereichkopieren()
Range("E2").Select
Cells.Find(What:="#NV", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
>>    Zelladresse1 = Range( "aktuell gefundene Zelle - 1 Zeile nach oben + 6 Spalten nach  _
rechts").Select
>>    Range("A2:Zelladresse1").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("A1").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveSheet.Paste
Sheets("Tabelle1").Select
Range("B2").Select
Application.CutCopyMode = False
End Sub
Gruß
Hans

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wertebereich suchen und kopieren
29.09.2014 15:48:05
Rudi
Hallo,
Range(Cells(2, 1), ActiveCell.Offset(-1, 6)).Copy
Gruß
Rudi

AW: Wertebereich suchen und kopieren
29.09.2014 16:01:23
stormlamp
Hallo Rudi,
danke für die Information.
Leider läuft der andere Teil des Makros nicht.
Ich habe das Makro aufgezeichnet, aber wenn ich es ablaufen lassen will, funktioniert es nicht und bleibt mit Fehler 91 hängen.
Bisher war ich davon ausgegangen, dass Makroaufzeichnungen ohne Nachbearbeitung auch lauffähig sind. Ganz offensichtlich ein Trugschluss. Jeweils die aufgezeichneten Teile "Cells.Find..." wollen nicht.
Was muss ich an diesem Script noch ändern, damit es fehlerfrei läuft?
Sub Bereichkopieren()
Range("E:E").Select
Cells.Find(What:="#NV", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
Range(Cells(2, 1), ActiveCell.Offset(-1, 6)).Copy
Sheets("Tabelle2").Select
Range("A1").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveSheet.Paste
Sheets("Tabelle1").Select
Range("B2").Select
Application.CutCopyMode = False
End Sub
Gruß
Hans

Anzeige
AW: Wertebereich suchen und kopieren
29.09.2014 16:39:58
Rudi
Hallo,
    Range("E2").Select
Cells.Find(What:="n/a", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
Range(Cells(2, 1), ActiveCell.Offset(-1, 6)).Copy

wobei Select/ Activate eigentlich überflüssig/ störend ist.

Gelöst
29.09.2014 20:22:14
stormlamp
Danke für die Hilfe, nun klappt es.
Die neue Information mitten im Thead hatte ich zuerst übersehen.
Gruß
Hans

AW: Wertebereich suchen und kopieren
29.09.2014 16:35:01
stormlamp
Hallo,
ich habe jetzt den Laufzeitfehler 91 weg, dafür funktioniert jedoch die vorgeschlagene Selektion nicht mehr. Wo mache ich den Fehler?
Sub Werte_kopieren()
' Makro2 Werte_kopieren
Range("E:E").Select
mystring1 = "#NV"
Set RangeObj = Cells.Find(What:=mystring1, After:=ActiveCell, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns, _
SearchDirection:=xlNext, MatchCase:=False)
Range(Cells(2, 1), ActiveCell.Offset(-1, 6)).Copy
Selection.Copy
Sheets("Tabelle2").Select
Range("A1").Select
mystring2 = ""
Set RangeObj = Cells.Find(What:=mystring2, After:=ActiveCell, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns, _
SearchDirection:=xlNext, MatchCase:=False)
ActiveSheet.Paste
Sheets("Tabelle1").Select
Range("B2").Select
Application.CutCopyMode = False
End Sub
Gruß
Hans

Anzeige
lösche Selection.Copy owT
29.09.2014 16:41:09
Rudi

AW: lösche Selection.Copy owT
29.09.2014 18:03:22
stormlamp
Hallo,
das war es leider nicht. Das Makro bleibt genau bei:
Range(Cells(2, 1), ActiveCell.Offset(-1, 6)).Copy
mit Laufzeitfehler 1004 stehen.
Gruß
Hans

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige