Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Doppelklick in Übersicht!?

Begonnen von J.D, Dezember 26, 2015, 20:29:40

⏪ vorheriges - nächstes ⏩

J.D

Tut mir leid Forum,

ich bin dann doch schneller zurück als erhoft!

Ich habe ein Form als Übersicht aller Kunden,
dort möchte ich nun mit Doppelklick in das Kunden Formular des ausgewählten Kunden wechsel...

zunächst einmal war die Problematik dass das Form Kunden geöffnet sein muss, das habe ich nun eliminiert! Denoch funktioniert das ganze leider nicht...

Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "Kunden", , , "KundenID = ´" & Me!KundenID & "´"
End Sub


Es erscheint ein PopUp in dem steht "Parameterwert eingeben" und die KundenID aus dem ersten Datensatz, egal auf welchen ich klicke!

Dadrunter das Eingabefeld, gebe ich hier eine KundenID an so wechselt er zum richtigen eingabe Formular!

Wenn ich Private Sub Form_DblClick(Cancel As Integer)
  DoCmd.OpenForm "Kunden"
  Forms!Kunden.Recordset.FindFirst "KundenID = " & Nz(Me!KundenID, 0)
End Sub


Schreibe, dann bekomme ich keine Fehlermeldung, aber das erste Recordset lässt sich nicht öffnen und alle anderen öffnen den ersten eintrag!

Was bitte mache ich falsch!???
:(

Ich denke da muss ne schleife durchlaufen?

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

DF6GL

Hallo,

wenn ich das Ganze richtig interpretiere, gibt es ein Textfeld mit Namen "KundenID"  nicht im Übersichtsform.
Wie wird denn die Kundenübersicht dargestellt? Ist das der Detailbereich des Forms oder ein Listenfeld oder...

Zudem ist die Frage, welchen Datentyp "KundenID" in der Tabelle "Kunden" (?) aufweist.

Im ersten Beispiel ist auf Datentyp "TEXT" zu schliessen, in zweiten auf Datentyp Zahl,Long, wobei die Filterung bei der Openform-Methode im ersten Code vorzuziehen ist.


Und:  eine Schleife muss da nicht durchlaufen werden....
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

J.D

Guten Abend Franz,

die KundenID ist in beiden Formularen gleich... also gemeint ist ja der Steuerelementinhalt. Ich habe erst das Kunden Formular gebaut, und dann habe ich ein Endlos Form zusammen stellen lassen, und habe einfach die Felder die ich in der Übersicht nicht haben will weg gelöscht!
Die KundenID ist aber noch sichtbar und vorhanden und sie wird mir in jeder Zeile angezeigt!
Der Type des Feldes in der DB ist auf Zahl...
Daher ist
Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "Kunden", , , "KundenID = ´" & Me!KundenID & "´"
End Sub
falsch und sollte eigentlich
Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "Kunden", , , "KundenID = ´" & Me!KundenID
End Sub

sein gehe ich mal von aus, aber auch da bekomme ich das eingabe Feld und die fehler!
Bei
Private Sub Form_DblClick(Cancel As Integer)
  DoCmd.OpenForm "Kunden"
  Forms!Kunden.Recordset.FindFirst "KundenID = " & Nz(Me!KundenID, 0)
End Sub

geht das Form ohne fehler, jedoch der falsche eintrag
mache ich daraus
Private Sub Form_DblClick(Cancel As Integer)
  DoCmd.OpenForm "Kunden"
  Forms!Kunden.Recordset.FindFirst "KundenID = " & Nz(Me!KundenID, 0) & "´"
End Sub

bekomme ich "Fehlender Operator in Ausdruck"

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

DF6GL

Hi,

schreib es komplett richtig und nicht nur halbherzig:


Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "Kunden", , , "KundenID ="   & Me!KundenID
End Sub


bzw. wenn es vorkommen kann, dass KundenID "leer" (NULL) ist, dann:

DoCmd.OpenForm "Kunden", , , "KundenID =" &   nz(Me!KundenID,0)


und nochmal: die Findfirst-Geschichte solltest Du in diesem Zusammenhang vergessen.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

J.D

Franz,
bitte entschuldige mein Unwissen...
Also ich habe nun
Private Sub Form_DblClick(Cancel As Integer)
  DoCmd.OpenForm "Kunden", , , "KundenID =" & Nz(Me!KundenID, 0)
End Sub

eingetragen und er öffnet mir immer den ersten Datensatz egel welchen ich klicke!
Ich lösche mal das Form und lasse es nochmal neu erstellen mit allen Daten, vieleicht geht es ja dann!

Ich habe auch mal ein parr Bilder hochgeladen, da sind die Felder und die einstellungen, die Steuerelemente sind bei beiden gleich sowie die Feldnamen!

Grüsse John
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

DF6GL

Hallo,

die Frage nach den DATENTYP des TABELLENfeldes ("KundenID") hast Du nicht beantwortet.....

Ich vermute an Hand des Screenshots, dass es sich hierbei um TEXT handelt und der Code so heißen sollte:

DoCmd.OpenForm "Kunden", , , "KundenID ='" & Me!KundenID & "'"

was Deinem Ausgangs-Beispiel entspricht.  Wenn das (immer noch) nicht geht, ist der Name(!, das ist was anderes als der Steuerelementinhalt)  des Formular-Textfeldes falsch. (nach zu prüfen im Eigenschaftenfenster des Textfeldes unter "Andere/Name")
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

J.D

Danke Franz für deine Geduld,
aber
ZitatDer Type des Feldes in der DB ist auf Zahl...

So nun habe ich das Formular nochmal neu gemacht!
Es enthält alle Felder aus der Kunden Tabele, ich habe alle felder im Entwurf auf Aktiviert Nein / Gesperrt Ja gestellt, da ja sonst der Doppelklick nicht funktioniert... und habe das Feld KundenID im Eigenschaftenfenster des Textfeldes unter "Andere/Name" wie du gesagt hast geprüft...

Es steht bei beiden Formularen
unter
Daten / Steuerelementinhalt
sowie unter
Daten / Name
jeweils KundenID

Leider geht der erste Datensatz immernoch nicht, und die anderen Zwei gehen mit der KundenID des ersten Datensatzes auf ;(

Grüsse J.D.
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

DF6GL

Hallo,


lad die Db mal hier hoch, komprimiert/repariert und gezippt...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

J.D

Habe mal in beiden Formularen den Namen (nicht den Steuerelementinhalt) auf Kunden_ID geändert sowie im Makro auch aber es kommt dann der Fehler mit dem Feld wo ich die ID eingeben kann und da drüber steht nur Kunden_ID, gebe ich eine an kommt nur nen leerer DS

[Edit] ok... DB ist im Anhang!

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

DF6GL

Hallo,


::)

Du führst einen schon an der Nase herum..  ::)

Das Tabellenfeld heißt "KundenID", das Form-Textfeld "Kunden_ID"...


geänderter Code:

Private Sub Form_DblClick(Cancel As Integer)
  DoCmd.OpenForm "Kunden", , , "KundenID =" & Nz(Me!Kunden_ID, 0)
End Sub

Private Sub Kunden_ID_Click()
DoCmd.OpenForm "Kunden", , , "KundenID =" & Nz(Me!Kunden_ID, 0)
End Sub
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

J.D

Franz, das war keine absicht... ich habe das doch auch geschrieben!
Ausgehend von deiner Aussage das Steuerelementinhalt und Name ja zwei verschiedene sind, bin ich davon ausgegangen das eventuell ein "Konflikt" herscht ;) daher die namens änderung!

Füge ich das von dir gepostete Makro in das von mir hochgeladene File ein (nur damit wir auf den gleichen änderungs stand sind)...

Ist die Antwort leider immernoch nein *cry*

Geht es bei dir?

[edit]
Bei mir kommt immernoch der erste eintrag bei den 2. und 3. eintrag und der 1. eintrag lässt sich nicht klicken! [/edit]

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

J.D

So, also neue Datenbank... neues glück...
Lediglich Kunden Tabele mit KundenID KundenName
sowie zwei Formulare...
Beide Formulare sind über den Assistenten gemacht... damit es zu keinen fehler kommen kann!

Problem ist immer noch das gleiche *Ratlos*

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

MaggieMay

#12
Hi,

schau dir doch einfach mal die Eigenschaft "Datensatzquelle" im Formular "Kunden" an...

Zitatneue Datenbank... neues glück...
ZitatBeide Formulare sind über den Assistenten gemacht... damit es zu keinen fehler kommen kann!
Das kann ja nicht ganz stimmen, denn irgendwie hast du alten Ballast mit importiert oder die neue DB durch Tests wieder untauglich gemacht.

BTW:
Das Klick-Ereignis kann bei gesperrten Textfeldern natürlich nicht eintreten.

Freundliche Grüße
MaggieMay

J.D

#13
Guten Morgen Maggie,
Zitat von: MaggieMay am Dezember 27, 2015, 01:21:08
...
schau dir doch einfach mal die Eigenschaft "Datensatzquelle" im Formular "Kunden" an...
Ja da war ein Filter auf den Datensatz mit dem ersten eintrag aus der Datenbank...
Diesen habe ich gelöscht, das Formular gespeichert, nochmal in die Übersicht geklickt, das selbe Problem und der Filter ist wider drin...
Unten im Form steht auch Filter aber es wird der falsche DS abgefragt!
Zitat von: MaggieMay am Dezember 27, 2015, 01:21:08
Das kann ja nicht ganz stimmen, denn irgendwie hast du alten Ballast mit importiert oder die neue DB durch Tests wieder untauglich gemacht.
Das währe nicht auszuschliessen, bin ja blutiger Anfänger... zumindest mit Exel & Access... denoch währe mir neu mit nur 5 klicks eine DB untauglich zu machen... wobei es auch einige sicherlich schaffen beim öffnen sie zu zerstören!???
Zitat von: MaggieMay am Dezember 27, 2015, 01:21:08
BTW:
Das Klick-Ereignis kann bei gesperrten Textfeldern natürlich nicht eintreten.
komme mir schon irgendwie dämlich vor, ganz ehrlich und ich habe auch keine Lust ständig zu fragen... natürlich ziehe ich das suchen im Google vor, und ich konnte nirgendwo finden das der DS in der übersicht nicht gesperrt sein darf, es ist ja schliesslich so das der DS in der Übersicht keines falls aktiviert und geändert werden soll, sonder er soll den entsprechenden eintrag im Formular Kunden öffnen!

Also habe ich etwas rumprobiert und danke dir für dein TIP da kann man lange suchen...
Aktiviert Ja
Gesperrt Nein
funktioniert! Tag gerettet :D

Danke Maggie und Danke Franz für deine Geduld ;)

Grüsse J.D
Hilfe zur Selbsthilfe vs. learning by burning
Schritt 1.2

MaggieMay

Hallo noch einmal,

wenn du die Daten schützen aber die Steuerelemente doch anklickbar machen willst, so musst du die Kombination
Aktiviert: Ja
Gesperrt: Ja
verwenden, oder du stellst den Recordsettyp des Formulars auf "Snapshot" ein.
Freundliche Grüße
MaggieMay