Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Textfeld für Suchmakro nutzen
zurück: aus einer Datenliste einzelne Daten auswählen weiter: Zahl aus Tabelle durch Text ersetzten Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Totem
Gast


Verfasst am:
20. Okt 2008, 16:41
Rufname:

Textfeld für Suchmakro nutzen - Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Hallo in die Runde:

Ich bin neu mit dem Thema Access beschäftigt und habe ein (hoffentlich triviales) Problem.
In einer bestehenden Datenbank existieren derzeit folgende Funtionen, einen Datensatz zu suchen:
1) Über ein Kombinationsfeld mit Sortierung --> alles ok
2) Ein Suchen-Feld (Fernglassymbol) in dem dann ein Suchenfenster (Word-like) aufpoppt.. Soweit auch ok.

Nun sollen die beiden Funktionen verein werden. Und zwar ein einem Texteingabefenster, welches als Input für ein Suchmakro dient.
Ich würde gerne ein Makro verwenden, weil ich noch nicht Code-fest bin und die Einstellungen des Makros eigentlich sehr komfortabel finde. Außerdem lässt sich schön in einem 2. Makro die Suche-Weiter Funktion integrieren.

Nun zum Problem: Der Wert des Textfeldes soll als Input für das Makro dienen. Und genau das funktioniert nicht. Folgende Einstellungen habe ich gemacht:

Suchen nach: --> Problemfeld
Vergleichen: Teil des Feldinhaltes
Groß-/Kleinschreibung: Nein
Suchen: Alles
Wie formatiert: Ja
Nur aktuelles Feld: Nein
Am Anfang beginnen: Ja

Wenn ich z.B. ein festes Wurt wie Maier in "Suchen nach" eingebe funktioniert alles wie gewünscht. Nur brauche ich eben den Wert des Texteingabefensters.

Ich hatte da an so was Ähnliches wie =[Text1442] gedacht. Nur dass es eben funtkionieren sollt Razz

Wäre für Anregungen sehr dankbar!!!
jens05
Moderator


Verfasst am:
20. Okt 2008, 21:38
Rufname:
Wohnort: ~~~~~


AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Hallo,
eventuell sollten wir es ohne Makro (vielleicht lesenswert (Warum sind Makros Mist ;)) aber trotzdem einfach mit Suchformular in 10 Minuten erstellt versuchen. ;)

_________________
mfg jens05 Wink
Totem
Gast


Verfasst am:
21. Okt 2008, 11:10
Rufname:

AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Totem am 21. Okt 2008 um 09:10 hat folgendes geschrieben:
Hoi Jens,

danke für die Rückmeldung!

Klar, Makros sind nicht gerade empfehlenswert.
Aber leider habe ich eben eine fertige Datenbank geerbt und die hat sich der Kollege in Selbstarbeit zusammengebastelt. Da fehlt evtl. auch mal ein Primärschlüssel für die Tabelle.....

Ich wurstel mich mal durch die Anleitung und schau mal, ob es so passt.
Aber für alle Fälle: Gibt es einen Eintrag für die Spalte "Suche nach", die mein Problem lösen würde?
Was mich reizt ist die Möglichkeit, auch Wortteilen (Uni statt Universität) suchen zu können, etc.....

Außerdem kann das "Weitersuchen" auch leicht gehändelt werden, wenn z.B. 2* der gleiche Nachname vorhanden ist. Dann kann z.B. mit einem Klick auf das Suchfeld der nächste Eintrag angezeigt werden, usw.

Ich versuhs ohne Makros, währe aber "als Notnagel" dankbar, wenn ich wüsste wie man das Feld deklarieren muss.
Außerdem hab ich jetzt schon Stunden damit zugebracht. Langsam geht's um die Ehre Very Happy

Ok, neuer Stand der Dinge.

Die Makros sind verschwunden.
Ich habe die Makros in Code konvertiert und dann als Funktionsaufruf eingebunden.

Die Zeile im entsprechenden Modul lautet:
Code:
    DoCmd.FindRecord "Suchwort", acAnywhere, False, , True, acAll, True
So, das passt wieder mal, nur bräuchte ich jetzt den Ausdruck den ich an die Stelle "Suchwort" setzen muss, um die eingabe des Textfeldes zu übernehmen.

Hüllfffffääääää
Willi Wipp
Moderator


Verfasst am:
21. Okt 2008, 11:16
Rufname:
Wohnort: Raum Wiesbaden

Re: Textfeld für Suchmakro nutzen - Re: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Hi Totem,

wenn Du die Zeile in die entsprechende Ereignis-Prozedur des Formulars verschiebst, dann einfach so
Code:
    DoCmd.FindRecord Me!Text1442, acAnywhere, False, , True, acAll, True

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Totem
Gast


Verfasst am:
21. Okt 2008, 12:31
Rufname:


AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Danke Willi wipp, es scheint zu funktionieren.
Dafür ist folgendes Problem aufgetaucht:

Lautet die Zeile
Code:
    DoCmd.FindRecord "Text", acAnywhere, False, , True, acAll, True
dann wird der nächste Eintrag mit dem Begriff Text gesucht. Also werden auch mal 100 Einträge übersprungen, wenn der Suchbegriff da nicht vorhanden ist.

Lautet die Zeile
Code:
    DoCmd.FindRecord Me!Text1442, acAnywhere, False, , True, acAll, True
dann wird nur der nächste Eintrag durchsucht und keiner Übersprungen. Das bedeutet, dass wenn der Eintrag erst an 100. Stelle steht, 100* geklickt werden muss.
Unterschied ist nur das 1. Argument der Suchfunktion.
Was hat das für eine Ursache?
Wie können die dazwischenliegenden Einträge auchnoch übersprungen werden?

Grüße

Totem
Willi Wipp
Moderator


Verfasst am:
21. Okt 2008, 12:52
Rufname:
Wohnort: Raum Wiesbaden

Re: Textfeld für Suchmakro nutzen (II) - Re: Textfeld für Suchmakro nutzen (II)

Nach oben
       Version: Office 2003

Hi Totem,

das kann ich so nicht nachvollziehen Confused
Wenn in dem Steuerelement Text1442 (btw. sehr sinnvoller Name Wink) der Wert Text steht,
dann sollte es genauso funktionieren.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Totem
Gast


Verfasst am:
21. Okt 2008, 13:35
Rufname:

AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Hallo Willi Wipp,

Ich verstehe es eben auch nicht.
Mit der Version "Text" werden Einträge mit dem Wort Text gefunden.

Mit der Version Me!Text1442 (Namen kriegts erst wenn's fertig is, des Glump) wird das in das Textfeld eingegebene Wort im aktuellen Eintrag gefunden, wenn es vorhanden ist. Der Eintrag aber nur um 1 Inkrementiert.
Also hat sich "suche Eintrag mit Text" mit "Suche Text im akteullen Eintrag" vertauscht.
Es ist wohl ein Fehler bei der Textsuche gegeben, da ich aber in einer Private Sub arbeite komme ich mit GoTo und Resume nicht weiter. Hab nur einmal eine MsgBox anzeigen lassen.

Gibt es eine Möglichkeit in so einem Fall einfach den nächsten Eintrag iterativ durchzusuchen, so lange bis eben ein passender gefunden ist?

Vielen Dank schon mal an der Stelle für die Unterstützung!

Totem
Willi Wipp
Moderator


Verfasst am:
21. Okt 2008, 13:41
Rufname:
Wohnort: Raum Wiesbaden

Re: Textfeld für Suchmakro nutzen (III) - Re: Textfeld für Suchmakro nutzen (III)

Nach oben
       Version: Office 2003

Hi Totem,

das "Glump" darf natuerlich nicht an die Datenherkunft (RecordSource) gebunden sein!

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Totem
Gast


Verfasst am:
21. Okt 2008, 13:50
Rufname:

AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Wenn ich das in der Entwurfsansicht an "Ungebunden" erkenne, dann ist nicht gebunden.
Willi Wipp
Moderator


Verfasst am:
21. Okt 2008, 14:06
Rufname:
Wohnort: Raum Wiesbaden

Re: Textfeld für Suchmakro nutzen (IV) - Re: Textfeld für Suchmakro nutzen (IV)

Nach oben
       Version: Office 2003

Hi Totem,

OK ich erinnere mich das war einer der Gruende warum ich die Methode nicht mehr verwende
Code:
    Dim strText As String
   
    strText = Me!Text1442
    Me!Text1442 = ""
    DoCmd.FindRecord strText, acAnywhere, False, , True, acAll, True
    Me!Text1442 = strText
Aber das naechste Problem wird dann das Weitersuchen sein Wink
Arbeite besser mit der Methode FindFirst des Recordset-Objektes.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Totem
Gast


Verfasst am:
21. Okt 2008, 14:41
Rufname:

AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Mad Heul......

Ich will doch nur was suchen...............................................
Du hast natürlich in weiser Voraussicht mein Problem schon erkannt.

Ich wollte es eigentlich mal mit dem DoCmd.FindNext probieren....

Vielen Dank an der Stelle mal. Das hat sehr geholfen. Mein aktuelles Problem sollte damit behoben sein. Wenn es noch nicht geht, muss ich mich erst mal in recordset einlesen, bevor ich doofe Fragen stelle.

Danke Willi Wipp
Willi Wipp
Moderator


Verfasst am:
21. Okt 2008, 14:48
Rufname:
Wohnort: Raum Wiesbaden

Re: Textfeld für Suchmakro nutzen (IV) - Re: Textfeld für Suchmakro nutzen (IV)

Nach oben
       Version: Office 2003

Hi Totem,

eigentlich ganz einfach Wink
Code:
    Me.Recordset.FindFirst "[SuchFeld] = " & Me!Text1442                ' Zahl
' bzw.
    Me.Recordset.FindFirst "[SuchFeld] = '" & Me!Text1442 & "'"         ' Text

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Totem
Gast


Verfasst am:
21. Okt 2008, 15:41
Rufname:


AW: Textfeld für Suchmakro nutzen - AW: Textfeld für Suchmakro nutzen

Nach oben
       Version: Office 2003

Jo, aber mir sagen die Apostroph-Kombis noch gar nix.
Deswegen bin ich auch sehr verwirrt, mit '" und ''" etc.
Schlicht und ergreifend habe ich keine Ahnung über die Syntax an der Stelle.

Ich habe aber eine Möglichkeit gefunden, wie es anstandslos geht:
Code:
Private Sub Text1442_DblClick(Cancel As Integer)
    Dim strText As String
   
    strText = Me!Text1442
    Me!Text1442 = ""
    DoCmd.FindRecord strText, acAnywhere, False, , True, acAll, False
    Me!Text1442 = strText
End Sub
Also einfach nur die Reihenfolge verändert und nicht nach dem ersten Eintrag suchen lassen. Das passt.
Der einzige Nachteil ist, dass ich so wohl keine Abfrage machen kann, ob ÜBERHAUPT ein Treffer erzielt worden ist. Das wäre noch ein feines Feature mit MSgBox und Co.

Wenn ich mich nicht verlesen habe, liefert das Findrecord aber nicht zurück, oder?
Da müsste man dann mit Recordset arbeiten...... Ojeoje
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Werte aus Kombifeld in Textfeld auswerten!! Hilfe! 10 KevinS 715 08. Jan 2008, 17:44
fruitcruiser Werte aus Kombifeld in Textfeld auswerten!! Hilfe!
Keine neuen Beiträge Access Tabellen & Abfragen: werte aus sql abfrage nutzen 3 carnage 510 08. Okt 2007, 16:51
Willi Wipp werte aus sql abfrage nutzen
Keine neuen Beiträge Access Tabellen & Abfragen: Textfeld umformatieren 2 Zolldi 604 05. Jul 2007, 14:39
Zolldi Textfeld umformatieren
Keine neuen Beiträge Access Tabellen & Abfragen: Datumsfuktionen nutzen und dynamisch vorausberechnen! 12 haukilein 1020 14. Jun 2007, 13:19
haukilein Datumsfuktionen nutzen und dynamisch vorausberechnen!
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrageergebnis in Textfeld (Formular) ausgeben 1 martin7720 1005 22. Mai 2007, 20:12
jens05 Abfrageergebnis in Textfeld (Formular) ausgeben
Keine neuen Beiträge Access Tabellen & Abfragen: Excel Tabelle in Access nutzen? 1 matze63 377 30. März 2007, 21:07
Thomas2007 Excel Tabelle in Access nutzen?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage: Kriterium aus Textfeld, Problem: ... 1 Tilly 898 22. Feb 2007, 20:59
stpimi Abfrage: Kriterium aus Textfeld, Problem: ...
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragekriterium über Textfeld in Formular eingeben 8 Gast 8266 25. Jan 2007, 17:32
Nouba Abfragekriterium über Textfeld in Formular eingeben
Keine neuen Beiträge Access Tabellen & Abfragen: Makro: SQL-Ausführen -> Textfeld quelle 16 Seega 5016 16. Jan 2007, 23:35
Willi Wipp Makro: SQL-Ausführen -> Textfeld quelle
Keine neuen Beiträge Access Tabellen & Abfragen: Zahlen in Textfeld abfragen 9 tigerganz 3756 08. Jan 2007, 20:58
steffen0815 Zahlen in Textfeld abfragen
Keine neuen Beiträge Access Tabellen & Abfragen: Inhalt Textfeld durch Aktualisierung löschen 2 Blume 904 30. Nov 2006, 13:15
Blume Inhalt Textfeld durch Aktualisierung löschen
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage eines Haltbarkeitsdatum durch einem Textfeld 3 PowerscooL.de 813 24. Nov 2006, 14:11
Willi Wipp Abfrage eines Haltbarkeitsdatum durch einem Textfeld
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML CSS