![]() |
![]() |
|
|
|||||||
| Programmierung Rat & Tat für Programmierer |
![]() |
|
|
Themen-Optionen | Ansicht |
|
|
#11 |
|
Inventar
![]() |
hm, der code reicht ihm wieder nicht
![]() Laufzeitfehler "Für mindestens einen erforderlichen Parameter wurde kein Wert übergeben" bei: rst.Open strSQL, cnn
____________________________________
Der Unterschied zwischen Theorie und Praxis ist, das es in der Theorie keinen Unterschied zwischen Theorie und Praxis gibt, in der Praxis aber schon. Wer schreibt, der bleibt! |
|
|
|
|
|
#12 |
|
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
Dann hat du einen Fehler im SQL-Statement. Falscher Feldname z. B.
Das Beispiel funktioniert unter Excel 2002 Ich verabschiede mich jetz bis morgen Abend. mfg WB |
|
|
|
|
|
#13 | |
|
Inventar
![]() |
Zitat:
![]() jetzt beibt nur eine Frage: kann man der where-klausel eine Variabe übergeben (und vor allem wie ) mfg
____________________________________
Der Unterschied zwischen Theorie und Praxis ist, das es in der Theorie keinen Unterschied zwischen Theorie und Praxis gibt, in der Praxis aber schon. Wer schreibt, der bleibt! |
|
|
|
|
|
|
#14 | |
|
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
Zitat:
Du musst dir einfach den Abfrage String zusammenbasteln - in deinem Fall dann so: sql1 = "SELECT Tabelle1.PNR, Tabelle1.NAME, Tabelle1.VNAM, Tabelle1.KST FROM Tabelle1 WHERE (((Tabelle1.PNR)= " & Variable & "))" |
|
|
|
|
|
|
#15 | |
|
Inventar
![]() |
Zitat:
Set rc1 = db.OpenRecordset(sql1) Proleme damit (Syntaxfehler, fehlender Operator) eine Idee? mfg
____________________________________
Der Unterschied zwischen Theorie und Praxis ist, das es in der Theorie keinen Unterschied zwischen Theorie und Praxis gibt, in der Praxis aber schon. Wer schreibt, der bleibt! |
|
|
|
|
|
|
#16 |
|
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
Wie Wildcards? Was hatn Tabelle1.PNR für einen Datentyp? String?
Und bei dem willst Wildcards benutzen - oder? (ich rate mal, falls es anders ist, schreib einfach )Also wenn ich mit meiner Annahme recht haebn, dann sollte die Abfrage so ausschaun: sql1 = "SELECT Tabelle1.PNR, Tabelle1.NAME, Tabelle1.VNAM, Tabelle1.KST FROM Tabelle1 WHERE (((Tabelle1.PNR) LIKE '*" & Variable & "*'))" |
|
|
|
|
|
#17 | |
|
Inventar
![]() |
Zitat:
)mfg
____________________________________
Der Unterschied zwischen Theorie und Praxis ist, das es in der Theorie keinen Unterschied zwischen Theorie und Praxis gibt, in der Praxis aber schon. Wer schreibt, der bleibt! |
|
|
|
|
|
|
#18 |
|
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
Hi!
Jetzt bin ich wieder in Amt und würden. Wenn du alle DS willst, brauchst du eigentlich keine WHERE-Klausel Alle DS: sql1 = "SELECT PNR, NAME, VNAM, KST FROM Tabelle1" Ein DS sql1 = "SELECT PNR, NAME, VNAM, KST FROM Tabelle1 WHERE PNR = " & NumerischeVariable DS aus einem bestimmten Bereich: sql1 = "SELECT PNR, NAME, VNAM, KST FROM Tabelle1 WHERE PNR BETWEEN " & NumerischeVariable1 & " AND " & NumerischeVariable2 Noch ein Hinweis: Wenn in der WHERE-Klausel eine Variable vom Typ String verwendet wird, muß sie in einfache Hochkommas (') gesetzt werden. mfg WB |
|
|
|
|
|
#19 |
|
Inventar
![]() |
ich habe jetzt zum ändern folgenden (praktischen ) code
Code:
Sub ändern()
Dim oAcc As New Access.Application
oAcc.OpenCurrentDatabase ("J:\PROJEKT\PIS\test\test.mdb")
oAcc.Visible = False 'fürs entwickeln angenehm
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = oAcc.CurrentDb
Set rs = db.OpenRecordset("Autos", dbOpenDynaset)
'einen Datensatz suchen
rs.FindFirst "PNR=" & var & ""
If rs.NoMatch Then
'Nix gefunden
Else
'Datensatz ändern
rs.Edit
rs!Marke = car
rs.Update
End If
rs.Close
Set db = Nothing
[gekürzt]
so gaaaanz langsam bekomm ich einen Plan von der Geschichte... aber nur langsam ![]() mfg
____________________________________
Der Unterschied zwischen Theorie und Praxis ist, das es in der Theorie keinen Unterschied zwischen Theorie und Praxis gibt, in der Praxis aber schon. Wer schreibt, der bleibt! |
|
|
|
|
|
#20 |
|
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
Hi!
Bei dieser Version startest Access. Das ist aber unnötiger Aufwand. Ich würde dir empfehlen, auch hier die ADO-Variante zu verwenden. Ist einfacher. Du mußt nur einen Cursor angeben, der das editieren der Daten erlaubt. Einen einzelnen DS gleich im SQL-Statement auswählen. Für mehrere DS die WHERE-Klausel weglassen, und das Recordset filtern. mfg WB |
|
|
|
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|