Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
840to844
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
840to844
840to844
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bereich bestimmen

Bereich bestimmen
24.01.2007 13:24:35
nevermore
Hallo Excel-Freunde
Ich probiere in zwei verschiedenen Tabellen einen Bereich automatisch auszulesen und miteinander zu vergleichen. Beide Tabellen werden jeweils periodisch vergrössert, so dass sich entsprechend der Bereich immer wieder ändert (mehr Zeilen).
Alles was ich in den verschiedenen Foren gefunden habe, funktioniert leider nicht. So bin ich auf Eure Hilfe angewiesen.
Hier ist der erste Teil meines Codes
Sub GwGPrüfung()
'
'
Application.ScreenUpdating = False
Dim RngGWG As Range, RngTaliban As Range
Windows("Identifikationen_Basel.xls").Activate
Worksheets("Zusammenfassung").Activate
With ActiveSheet
Set RngGWG = .Range(Cells(2, 1), Cells(Rows.End(xlDown).Row, 6))
End With
Windows("Komplettliste_Alle_2.xls").Activate
With ActiveSheet
Set RngTaliban = .Range(Cells(2, 19), Cells(Rows.End(xlDown).Row, 21))
End With
Windows("Identifikationen_Basel.xls").Activate
→ For Each Name In Worksheets("Zusammenfassung").Range(RangeGWG).Cells
TextA = UCase(Trim(Name.Value))
.
.
.
Der Code bleibt bei der mit → bezeichneten Zeile hängen.
Wo liegt der Fehler?
Besten Dank für Eure Hilfe
Gruss
Daniel

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

Betreff
Datum
Anwender
Anzeige
Als was ist "Name" deklariert ? o.w.T.
24.01.2007 13:55:29
Ramses
...
AW: Als was ist "Name" deklariert ? o.w.T.
24.01.2007 14:18:09
nevermore
Hallo Ramses
Das ist eine wirklich gute Frage ;-). Diesen Teil der Suchfunktion habe ich übernommen.
Ich habe aber vergessen zu erwähnen, dass wenn ich den Bereich festlege (also
RangeGWG = "A2:F741"
RangeTaliban = "S2:U1722")
der Code komplett und korrekt abläuft.
Kurz erklärt er nimmt den Inhalt jeder Zelle im ersten Arbeitsblatt und sucht in der anderen Tabelle, ob dieser Text gefunden wird.
Gruss
Dani
AW: Range-Benennung
24.01.2007 14:46:28
Erich
Hallo Dani,
ich empfehle dir, oben in deine Module in eine Zeile
Oprion Explicit
zu schreiben.
Deine Variable heißt mal RangeGWG und mal RngGWG.
RngGWG ist ein Range. Was sollte dann Range(RngGWG) ?
Wo der Bereich RngGWG liegt, hast du oben (mit Set) festgelegt.
Versuchs mal mit
For Each Name in RngGWG.Cells
Dazu sollte "Name as Range" deklariert sein.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Range-Benennung - Korrektur
24.01.2007 14:47:38
Erich
Hallo Dani,
es sollte
Option Explicit
heißen...
Grüße von Erich aus Kamp-Lintfort
AW: Range-Benennung - Hinweis
24.01.2007 14:53:17
Erich
Hallo Dani,
noch eine Empfehlung:
Statt "Name" solltest du einen anderen Namen für deine Variable wählen, z. B. rngC.
(es geht um eine Range-Variable)
"Name" ist eine Eigenschaft oder eine Methode vieler Objekte in VBA.
Grüße von Erich aus Kamp-Lintfort
AW: Als was ist "Name" deklariert ? o.w.T.
24.01.2007 14:59:54
Ramses
Hallo
"...der Code komplett und korrekt abläuft..."
Zufall :-)
Set RngGWG = .Range(Cells(2, 1), Cells(Rows.End(xlDown).Row, 6))
Funktioniert unter einer anderen BlattKonstellation nicht :-)
Dim myCell as Range
For Each myCell In RangeGWG
Dann sollte das eigentlich auch tun
Gruss Rainer
Anzeige
AW: Als was ist "Name" deklariert ? o.w.T.
24.01.2007 17:17:35
nevermore
Hallo Rainer & Erich
Vielen Dank für Eure Hilfe. Es klappt wunderbar.
Doch leider hat er mich zu einem nächsten Problem geführt. Offenbar scheint das 'Name' wichtig zu sein, denn das Ergebnis des Codes ist nicht identisch, wenn ich 'Name' oder 'myCell' benutze. Aber ich versuche mich mal selbst schlau zu machen.
Meine eigentliche Frage ist beantwortet. Besten Dank noch mal
Grüsse aus der Schweiz
Daniel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige