Clever-Excel-Forum

Normale Version: Zeile suchen und als Adresse nutzen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hi @ all

ich nutze einen Code um die Zeile mit dem Inhalt "Endstation" finden. Das klappt
Die Zelle ist bei C72 (deshalb suchen, da das je nach Liste variiert)
Nun will ich die Adresse und Zeilen Nummer für eine weitere Verarbeitung. Das klappt nicht. Es wird C462 als Ende deklariert.

Zur weiteren Info, ich nutze den Code in den Datenblättern und suche das meiste über die Option mit Hintergrundfarbe, da ich die Überschrift mit Hintergrundfarbe nutze und die Liste ohne.

Ich möchte wissen, warum bei mir nach der Endstation weitere Zellen ausgewählt werden. Danke für alle Hinweise



Code:
    If Target = "Alles zuklappen" Then
        Dim last, first As Range
        Dim start As String, ende As String

        With Sheets("Characters").Range("C:C")
            Set first = .Find("Beginn", LookIn:=xlValues)     '(liegt bei C4)
            Set last = .Find("Endstation", LookIn:=xlValues)  '(liegt bei C72)
                MsgBox first                                  '(gibt richtig "Beginn" wieder)
                MsgBox last                                   '(gibt richtig "Endstation" wieder)

            start = first.Offset(1, 0).Address(0, 0)
            start_zeile = first.Offset(1, 0).Row
                MsgBox start                                  '(gibt richtig "C5" wieder)
                MsgBox start_zeile                            '(gibt richtig "5" wieder)

            ende = last.Offset(-1, 0).Address(0, 0)
            ende_zeile = last.Offset(-1, 0).Row
                MsgBox ende                                   '(gibt falsch "C462" wieder, sollte "C71" sein)
                MsgBox ende_zeile                             '(gibt richtig "462" wieder, sollte "71" sein)
        End With
    End If
Hallo,

warum stellst du die Datei nicht ein? Nur mit dem Quelltext lässt sich so etwas nur schwer analysieren.
=SVERWEIS("Suchbegriff";C:C;1) ergibt Dir den Inhalt (bzw. den davor, falls sortiert)

=VERGLEICH("Suchbegriff";C:C) ergibt Dir die gesuchte Zeile
Hallo

ich habe den Code aus Neugier mal in einer Tabelle durchlaufen lassen, das Ergebnis ist einwandfrei C4 und C72.
Frage, kann es sein das der Text in C72 falsch geschrieben ist und dahinter noch mal der Text "Endstation" kommt??
Excel macht normalerweise keine Fehler, sondern wir als User.  Ohne die Datei zu sehen ist das aber "heiterres Ratespiel!"

mfg Gast 123
Hi @ all

Ich bin doch dumm wie Stroh  16 16
Manchmal sitzt man echt zu lange am Coden und sieht vor lauter Sonne den Regen nicht mehr  Undecided 20 20

Danke an alle die sich die Zeit genommen habe



@Klaus-Dieter
  • Danke, aber es sind in der Original Datei sensible Daten. Und 30 Datenblätter mit Listen und Code muss ich nicht extra posten um den Fehler in einer Sequenz zu finden. Bzw andere für mich gefunden haben  Blush
@LCohen
  • Danke, aber wie ich in Zellen nach etwas suche, weiß ich bereits, war auch nicht meine Frage  
@Gast 123
  • Danke, ich habe den Fehler gefunden. Dein Ansatz hat mich auf die Idee gebracht.
    Liste 1 und 2 sind identisch bis auf die Menge des Inhaltes. Also Copy Paste mit den Tabellen und statt ActiveSheet zu nutzen hatte ich in Liste 1 den Sheet Namen genommen.
    Da beide gleich sind kam kein Fehler, aber Liste 1 ist eben bis 462 lang und daher habe ich in Liste 2 das Ende von Liste 1 angesprochen.
    Hätte es selber einfach in einer neuen reinen Datei probieren sollen, dann wäre mir das aufgefallen, bevor ich so einen peinlichen Fehler öffentlich poste  Idea

Thema erledigt
Hallo,


Zitat:@Klaus-Dieter
  • Danke, aber es sind in der Original Datei sensible Daten. Und 30 Datenblätter mit Listen und Code muss ich nicht extra posten um den Fehler in einer Sequenz zu finden. Bzw andere für mich gefunden haben 

natürlich kann man versuchen, anhand eines Quelltextes Fehler zu finden. Leichter geht das aber, wenn man das Umfeld kennt, denn meine Erfahrung sagt mir, dass sehr häufig der Fehler in der Datenbasis zu finden ist. 30 Datenblätter mit Quelltexten deuten auch in diese Richtung.  Sensible Daten kann man soweit verfälschen, dass sie das nicht mehr sind.