Access 2003 - Recordset
Hallo an alle,
ich würde mal wieder Hilfe in Access VBA benötigen.
Folgende Situation:
Ich erstelle anhand einer Tabellenerstellungsabfrage die tabelle: tmp_tabelle.
In dieser Tabelle stehen Daten für einen Späteren Bericht Namens: rpt_bericht
In der Tabelle tmp_tabelle gibt es unter anderem ein Feld das sich "ZahlungsBedingung" nennt.
Mein Ziel ist es nun per VBA prüfen zu können welcher Kunde (Feldname: Name1) in der Tabelle tmp_tabelle eine Zahlungsbedingung hat welche mit NACHN* beginnt.
(In Summe gibt es 3 Zahlungsbedingungen welche passen können NACHN -2%, NACHN -3%, NACHN - 5%).
Diese Kunden sollten anschließend mit der Meldung:
ACHTUNG: Kunden [Name1]
Kunden [Name1]
Kunden [Name1] sind per Nachnahme zu liefern.
in einer MxgBox erscheinen.
Hoffe ich habe mir verständlich genug ausgedrückt, und mir kann jemand helfen.
Ich vermute mal das ich dafür mit Recordset arbeiten muss, habe jedoch keine Ahnung wie ich das angehen soll....
DANKE für Eure HILFE!
lg
Mario
ich würde mal wieder Hilfe in Access VBA benötigen.
Folgende Situation:
Ich erstelle anhand einer Tabellenerstellungsabfrage die tabelle: tmp_tabelle.
In dieser Tabelle stehen Daten für einen Späteren Bericht Namens: rpt_bericht
In der Tabelle tmp_tabelle gibt es unter anderem ein Feld das sich "ZahlungsBedingung" nennt.
Mein Ziel ist es nun per VBA prüfen zu können welcher Kunde (Feldname: Name1) in der Tabelle tmp_tabelle eine Zahlungsbedingung hat welche mit NACHN* beginnt.
(In Summe gibt es 3 Zahlungsbedingungen welche passen können NACHN -2%, NACHN -3%, NACHN - 5%).
Diese Kunden sollten anschließend mit der Meldung:
ACHTUNG: Kunden [Name1]
Kunden [Name1]
Kunden [Name1] sind per Nachnahme zu liefern.
in einer MxgBox erscheinen.
Hoffe ich habe mir verständlich genug ausgedrückt, und mir kann jemand helfen.
Ich vermute mal das ich dafür mit Recordset arbeiten muss, habe jedoch keine Ahnung wie ich das angehen soll....
DANKE für Eure HILFE!
lg
Mario
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 120413
Url: https://administrator.de/contentid/120413
Ausgedruckt am: 22.11.2024 um 00:11 Uhr
9 Kommentare
Neuester Kommentar
Hi e2Mario
Meine Kenntnisse sind zwar auch nicht mehr so ganz aktuell, aber letztes Mal als ich sowas gemacht habe ging das in etwa so:
irgendwie sowas... ich erhebe weder anspruch auf vollständigkeit noch auf richtigkeit ;)
Meine Kenntnisse sind zwar auch nicht mehr so ganz aktuell, aber letztes Mal als ich sowas gemacht habe ging das in etwa so:
Dim rs as recordset
Dim qry
qry = "SELECT Zahlungsbedingung, Name1 FROM tmp_tabelle WHERE Zahlungsbedingung LIKE 'NACHN%"
Set rs = CurrentDb().OpenRecordset(qry)
If rs.RecordCount Then
rs.MoveFirst
While Not rs.EOF
Msgbox "Kunde " & rs.Fields.Item("Name1").Value & " muss per NN geliefert werden"
rs.MoveNext
Wend
Else
MsgBox "Keine Einträge per Nachnahme"
End If
irgendwie sowas... ich erhebe weder anspruch auf vollständigkeit noch auf richtigkeit ;)
Langsam habe ich hier so das Gefühl das ich keinen Support sondern mehr Programmiernug auf Auftrag betreibe...
Also 1. zur Query: Du hast schon NACHN% und nicht NACH* verwendet oder? (mit % und nicht *). Ich hab das so getestet und hat auch wunderbar funktioniert. (Zugegeben unter MSSQL2005 anstelle von Access aber sollte trotzdem gehen).
Ansonsten findest du unter http://sql.1keydata.com/de/sql-like.php eine gute Referenz wie das mit LIKE aussehen sollte. (Erstes google ergebnis nach 'sql like' übrigens... )
Und 2. zur einen Msgbox.
Ersetze
durch
cheers
Also 1. zur Query: Du hast schon NACHN% und nicht NACH* verwendet oder? (mit % und nicht *). Ich hab das so getestet und hat auch wunderbar funktioniert. (Zugegeben unter MSSQL2005 anstelle von Access aber sollte trotzdem gehen).
Ansonsten findest du unter http://sql.1keydata.com/de/sql-like.php eine gute Referenz wie das mit LIKE aussehen sollte. (Erstes google ergebnis nach 'sql like' übrigens... )
Und 2. zur einen Msgbox.
Ersetze
While Not rs.EOF
Msgbox "Kunde " & rs.Fields.Item("Name1").Value & " muss per NN geliefert werden"
rs.MoveNext
Wend
durch
While Not rs.EOF
liste = liste & rs.Fields.Item("Name1").Value & vbCRLF
rs.MoveNext
Wend
Msgbox "Folgenden Kunden sind per NN zu bedienen:" & vbCRLF & liste
cheers
<quote>
Klar habe ich % anstelle von * verwendet. Die SQL Befehle like habe ich mir auch vorher angesehen....
Keine Angst, ich will mich hier nicht nur "bedienen" lassen, und einen auf Faul machen
</quote>
Ach so, ja dann war das eine Fehlinterpretation meinerseits....
<quote>
ich will dich auch
nicht nerven!
</quote>
Keine Angst, wenn du mich nerven würdest hätte ich von vornherein nicht geantwortet ^^
Schliesslich ist das Forum da zum helfen, ich hab nur dann meine Mühe damit, wenn Leute sich die ganze Arbeit abnehmen lassen ohne zumindest lernwillig zu sein.
Falls dein Problem wirklich gelöst ist könntest du noch "Diesen Beitrag als gelöst markieren" im Forum
So long, and thanks for all the fish
tannerli
Klar habe ich % anstelle von * verwendet. Die SQL Befehle like habe ich mir auch vorher angesehen....
Keine Angst, ich will mich hier nicht nur "bedienen" lassen, und einen auf Faul machen
</quote>
Ach so, ja dann war das eine Fehlinterpretation meinerseits....
<quote>
ich will dich auch
nicht nerven!
</quote>
Keine Angst, wenn du mich nerven würdest hätte ich von vornherein nicht geantwortet ^^
Schliesslich ist das Forum da zum helfen, ich hab nur dann meine Mühe damit, wenn Leute sich die ganze Arbeit abnehmen lassen ohne zumindest lernwillig zu sein.
Falls dein Problem wirklich gelöst ist könntest du noch "Diesen Beitrag als gelöst markieren" im Forum
So long, and thanks for all the fish
tannerli