Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1152to1156
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

Zeile finden

Zeile finden
Gerhard
Hallo da draussen...
Ich komm ned drauf, für euch ist es wahrscheinlich einfch ;)
Habe eine UF mit der ich Daten in eine bestimmte Zeile zurückschreiben will.
Ich habe eine Textbox in der eine Zeilennummer steht. In diese Zeile sollen mehrere weitere Textboxen zurückgeschrieben werden (bei Klick auf Commandbutton CMB_SPEICHERN).
Diese Zeile wird mit einem gesetzen Autofilter angezeigt, sollte ich noch erwähnen
Ich weiss nur noch irgendwas mit findWhat usw. Aber ich finde diesen Beitrag nicht mehr
gruß gerhard

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeile finden
26.04.2010 19:38:44
fcs
Hallo Gerhardt,
entspricht die in der Textbox angezeigte Zeilennummer der Nummer der Zeile in der Tabelle?
Dann etwa so. Namen von textboxen und Tabellen muss du ggf. anpassen.
Mit der Suchen-Funktion komst du nur weiter wenn in einer Spalte nach einem eindeutigen Suchbegriff gesucht werden kann.
Gruß
Franz
Private Sub CMB_SPEICHERN_Click()
Dim Zeile As Long
If IsNumeric(Me.TextboxZeileNr) Then
Zeile = CLng(Me.TextboxZeileNr)
With Worksheets("Tabelle1") ' Datentabelle
.Cells(Zeile, 1).Value = Me.TextBox1
.Cells(Zeile, 2).Value = Me.TextBox2
'usw.
End With
Else
MsgBox "keine Zeilennummer in Textbox"
End If
End Sub

Anzeige
AW: Zeile finden
26.04.2010 20:28:15
Gerhard
Hallo Franz...
Ja, in dieser Textbox ist eine eigene Nummer vergeben, also diese entspricht nicht der tatsächlichen Zeilennummer...
Kann ich dann deinen Vorschlag trotzdem verwenden?
Gruß Gerhard
AW: Zeile finden
26.04.2010 22:48:06
fcs
Hallo Gerhard,
irgendwie muss ja die Zeile ermittelt werden. In die die Daten geschrieben werden sollen.
Wie das funktionieren kann, dafür hab ich hier noch keine Anhaltspunkte.
Sinnvoller Weise liest man die Zeilennummer zusätzlich zu den Daten mit in eine Combobox oder Listbox ein.
Dann hat die Nummer über .List-Eigenschaft und den Listindex zur Verfügung.
Ansonsten kann man natürlich meine Prozedur als Grundgerüst nutzen. Allerdings erstmal muss geklört werden: Wie komm man an die Zeilennummer?
Gruß
Franz
Anzeige
AW: Zeile finden
27.04.2010 06:37:52
Gerhard
Guten Morgen
Manchmal sollte man einfach ne Nacht darüber schlafen und sich um den Mist gedanken machen den ich verzapfe *lach*
Habe eine Tabelle. In Spalte A stehen fortlaufende Nummern, Beginnen tun meine Zeilen ab Zeile 7 (lfd. Nr. 1, Zeile 8 Nr2, Zeile 9 Nr. 3 usw.)
Diese Nummer und weitere Spalten aus dieser Zeile lese ich in mehrere Textboxen bei gesetzem Autofilter ein. Dieser Datensatz kann nun bearbeitet werden und soll wieder zurückgeschrieben werden. Und zwar genau in die Zeile die In Textbox TB_Nr steht. Also es kann sein das ich Datensatz Nr 25 eingelesen habe der tatsächlich aber in Zeile 32 steht.
Deswegen meinte ich Eingangs bei meinem ersten Post, das ich mit findwhat arbeiten muss (finde was? Suche in Spalte A nach Wert aus TB_Nr und trage die weiteren Textboxen in diese Zeile ein.
Ich hoff jetzt war es verständlicher ;)
Gruß Gerhard
Anzeige
hier ein Beispiel ...
27.04.2010 07:34:57
Matthias
Hallo Gerhard
wie Franz bereits geschrieben hat, nutze ListIndex z.B einer Combobox
Userbild
Der erste Einrag der Combobox hat immer den ListIndex(0) hier also die lfd.Nr.1
Da Deine Daten erst ab Zeile 7 beginnen also ListIndex+7
Die lfd.Nr.11 ist ListIndex(10)
Also ListIndex(10)+7 entspricht Zeile 17
Option Explicit
Private Sub CommandButton1_Click()
If ComboBox1.ListIndex >= 0 Then
 Cells(ComboBox1.ListIndex + 7, 2) = TextBox1
End If
End Sub
https://www.herber.de/bbs/user/69255.xls
Hoffe geholfen zu haben
Gruß Matthias
Anzeige
AW: hier ein Beispiel ...
27.04.2010 08:35:04
Gegga
Guten Morgen Matthias
Nur für mein Verständnis nochmals
Wieso Combobox? Die von mir vergebene "Zeilennummer oder Indexnummer" steht in einer Textbox (und wird aus Spalte A eingelesen).
Gibt es bei einer Textbox auch einen ListIndex Eintrag?
Ich versuch es mal "in meinen Worten" auszudrücken, was ich genau will.
Userform, Schaue was in TB_Nr für eine Zahl steht, suche diese Zahl in Sheet "Liste" in mit Autofilter gefilterten Spalte A und schreibe in diese Zeile (die Nummer aus TB_Nr kann von tatsächlicher Zeilennummer abweichen) die Textboxen in entsprechende spalten.
Das Eintragen in entsprechende Spalten schaff ich selber, ich tu mir nur schwer die "richtige" Zeile zu finden. Deshalb die "Idee" mit findwhat (Inhalt TB_Nr. in specialCells oder so irgendwie)
Gruß Gerhard
Anzeige
zeig bitte mal Dein Beispiel ...
27.04.2010 09:04:35
Matthias
Hallo
Warum einmal Gerhard und jetzt Gegga? Das verwirrt nur, mit wem man kommuniziert!
Gibt es bei einer Textbox auch einen ListIndex Eintrag?
Nein
Hab mich auf Franz seinen Beitrag bezogen: (wg. der Combobox)
https://www.herber.de/forum/archiv/1152to1156/t1153904.htm#1153936
Ist mE leicher zu händeln. Aber egal.
Da Du ja schon ein UserForm hast, lade doch bitte ein kleines Bsp. hoch
Bitte ein konkretes aussagekräftiges Beispiel!
  • Welche Zahl schreibst Du z.B in die TB und was erwartest Du wann, wo und warum?

  • Gibt es diese Zahl in Sheet "Liste" nur einmal?

  • Ich kann mir noch keinen Reim draus machen!
    Gruß Matthias
    Anzeige
    AW: zeig bitte mal Dein Beispiel ...
    27.04.2010 09:33:33
    Gegga
    Hallo Matthias
    Sorry, ich heisse Gerhard und werde aber nur Gegga genannt ;) *lach* Mittlerweile, wenn mich jemand nach meinem Namen frägt antworte ich schon automatisch mit Gegga...Sorry wenns zu Verwirrungen geführt hat...
    Die Liste ist mittlerweile zu gross (>300 kB)
    Nein In der TB_Nr steht schon eine Zahl (aus Spalte A) und kann nicht geändert werden (TB_Nr ist locked)
    Sie dient lediglich als "Index" um die richtige Zeile wieder zu finden für die Suche, und ja diese Zahl gibt es nur eineinziges Mal (fortlaufend 1-999)
    Habe jetzt nochmals nebenher die Forumssuche intensivst benutzt und habe glaube ich, was ich gesucht habe...
    Folgendes habe ich gefunden und für mich mal umgebaut:
    Private Sub Suchen()
    Dim lngBearb As Long
    Dim durchsuchen_Bearb
    With Sheets("Liste")
    Set durchsuchen_Bearb = .Range("A:A").Find(what:=TB_Nr.Value, _
    lookat:=xlWhole)
    If Not durchsuchen_Bearb Is Nothing Then
    lngBearb = durchsuchen_Bearb.Row
    .Cells(lngBearb, 2) = TB_PPSNUMMER.Value
    End Sub
    
    Wenn ich das richtig erkenne bezieht sich diese "Suche" aber nur auf eine Liste, bei der kein Autofilter gesetzt ist? Wie muss es lauten, wenn bei einem gesetzen Autofilter gesucht werden muss?
    Oder ist das hier völlig egal?
    Greetz GERHARD ;)
    Anzeige
    prüf das doch mit ner MsGBox ...
    27.04.2010 09:42:32
    Matthias
    Hallo
    Das kannst Du doch prüfen, ob der Code die richtige Zeilennummer zurückgibt
    lngBearb = durchsuchen_Bearb.Row
    Msgbox lngBearb
    Das testest Du einmal mit und einmal ohne Filter.
    Ich glaube nicht das der Filter da ein Rolle spielt.
    Es bleibt ja trotzdem die gleiche Zeile
    Gruß Matthias
    AW: Suchen bei gesetztem Autofilter
    27.04.2010 10:28:20
    fcs
    Hallo Gerhard,
    die Suchen-Methode sucht nur in den sichtbaren Zellen.
    Falls notwendig muss man also vor der Suche den Filter zurücksetzen und alle Daten anzeigen.
    Gruß
    Franz

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige