Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1668to1672
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

geht das ohne SELECT ??

geht das ohne SELECT ?
24.01.2019 22:26:23
Georg
Hallo zusammen,
ich versuche immer select zu vermeiden (gibt ja genug Hinweise dazu..). Jetzt hab ich aber ein Thema, bei dem ich glaube es nicht vermeiden zu können. Bei dem folgenden (banalem) Code fällt mir nixx dazu ein:
Range("A1:NZ1").Find(what:="sd", LookAt:=xlWhole).Select
Range(Selection, Selection.End(xlDown)).Copy Range("E8")
Geht das auch ohne oder macht es hier ausnahmsweise mal Sinn?
Sachverhalt: er soll eine Spaltenüberschrift suchen und die Felder drunter an eine andere Stelle kopieren, egal wie viel Zellen es sind.
Danke und Gruß Georg

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Vielleicht so...
24.01.2019 22:51:35
Beverly
Hi Georg,
...
    Dim rngZelle As Range
Set rngZelle = Range("A1:NZ1").Find(what:="sd", LookAt:=xlWhole)
Range(rngZelle, rngZelle.End(xlDown)).Copy Range("E8")


klasse :-)
24.01.2019 23:05:55
Georg
Ja natürlich - oh man, warum hab ich manchmal so ein Brett vorm Kopf!?!?
Vielen Dank Karin! Werde ich morgen gleich testen..
:-)))
AW: klasse :-)
25.01.2019 07:26:03
Luschi
Hallo Georg,
beide vorgeschlagene Lösungsansätze haben einen entscheidenen Makel:
- wird der Suchbegriff nicht gefunden
- dann gibt's eine herrlichen Vba-Error-Meldung
- deshalb so:

Dim rngZelle As Range
Set rngZelle = Range("A1:NZ1").Find(what:="sd", LookAt:=xlWhole)
If Not (rngZelle Is Nothing) Then
Range(rngZelle, rngZelle.End(xlDown)).Copy Range("E8")
Else
MsgBox "Suchbegriff leider nicht gefunden!", 16, "Schade..."
Wnd If

Außerdem sollte man noch diese 2 Parameter angeben: SearchOrder und MatchByte
und auf den Parameter LookAt würde ich nie verzichten.
Aber das kann man ja hier nachlesen:
https://docs.microsoft.com/de-de/office/vba/api/excel.range.find
Gruß von Luschi
aus klein-Paris
Anzeige
AW: klasse :-)
25.01.2019 10:23:07
Georg
klasse, dank Dir Luschi!
oder so
24.01.2019 23:05:41
Daniel
mit With-Klammer statt Variable
With Rows(1).Find(what:="sd", lookat:=xlwhole)
Range(.Cells, .end(xldown)).Copy Range("E8")
End with
Gruß Daniel
Öha!
24.01.2019 23:08:58
Georg
da wär ich nie drauf gekommen, auch Dir herzlich danke Daniel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige