Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

In Access Daten auslesen

Empfohlene Antworten

Veröffentlicht

Hallo Leutz!

Ich weiß hier echt nicht mehr weiter.

Ich habe ein Formular erstellt, und auch schon einige Funktionen eingebaut wie zum Beispiel eine DSum Abfrage etc.

Läuft auch alles wunderbar, aber jetzt scheitert es an einer der einfachsten Sachen. In der Hilfe finde ich absolut nichts dazu:

Wie kann ich in einem Textfeld den ersten Eintrag eines Feldes einer Tabelle anzeigen lassen.

Tabelle = Materiallager

Feld = Fach

Das Feld Fach hat den Primärschlüssel. Und die Zuordnung AUTOWERT. Das Feld zählt mit jedem Datensatz immer weiter hoch. Und hat bei 1 angefangen.

Es soll aber nur unter einem bestimmten Kriterium ausgeworfen werden:

Beispiel:

Fach ID-Nummer Material Menge

01 910037 Eisen 200

02 910045 Stahl 400

03 910028 Holz 300

04 910045 Stahl 400

Ich möchte jetzt das er mir das erste Fach anzeigt in dem Das Material mit der ID-Nummer 910045 liegt.

Ich hab das so probiert:

Text3.Value = ("[Fach]", "Materiallager", "[iD-Nummer] = Text1.Text")

'Bei Text1 kann man eingeben welche ID-Nummer man sucht.

Das hat aber nicht funktioniert.

Das ist jetzt glaub ich sehr kompliziert geschrieben, aber vielleicht versteht es ja doch jemand und kann mir weiterhelfen.

Vielen Dank schonmal im vorraus

[GoD]Fatum

Ist wirklich etwas seltsam geschrieben ;)

wenn ich es richtig verstanden habe, müsste es so klappen:

Dim Datenbank As Database

Dim rec_Suche As Recordset

str_Eingabe As String 'ich habe jetzt einen String genommen, muß halt je nach Art für die ID eingestellt werden

Set Datenbank = CurrentDb

Set rec_Suche = Datenbank.OpenRecordset("Materiallager", dbOpenSnapshot)

rec_Suche.FindFirst "[iD-Nummer] ='" & str_Eingabe & "'"

und schon hast Du den ersten Datensatz mit der passenden ID Nummer. Kannst ja alle Daten so auslesen, wie Du sie brauchst, Dir anzeigen lassen...

CU

Ich habe ein ähnliches Problem...ich will die Daten in einer Tabelle verändern. Die werte kommen von Umschaltflächen, und Access trägt die daten mit nummern von 1-5 ein (sind 5 Flächen). Aber ich möchte nun, dass die Werte umgewandelt werden in Namen. Gibt es eine Möglichkeit das schon beim Klicken der Umschaltflächen zu machen, wenn ja wie? Oder kann ich nachträlich einen Code schreiben, der einmal durch die gesamte Tabelle läuft und die Werte durch Namen austauscht???

Diesen Code habe ich geschrieben undd er funzt auch, aber ich kann damit immernur den ersten Datensatz ändern und nicht die restlichen ....

Option Compare Database

Option Explicit

------------------------

Private Sub cmdtest_Click()

EditX

End Sub

------------------------

Sub EditX()

Dim Sportlerwahl As Database

Dim Namen As Recordset

Dim Sportlerin As String

Set Sportlerwahl = CurrentDb

Set Namen = Sportlerwahl.OpenRecordset("Sportlerwahl", _

dbOpenDynaset)

'Auslesen des ersten Wertes

Sportlerin = Namen!Sportlerin

'Umwandeln der dort vorhandenen Zahlen in Namen

Select Case Sportlerin

Case 1

Sportlerin = "Name1"

Case 2

Sportlerin = "Name2"

End Select

'Aufruf der Prozedur "EditName" mit Übergabe des Namens

EditName Namen, Sportlerin

Namen.Close

Sportlerwahl.Close

End Sub

--------------------

Sub EditName(NamenTemp As Recordset, SportlerinTemp As String)

With NamenTemp

.Edit

!Sportlerin = SportlerinTemp

.Update

.Bookmark = .LastModified

End With

End Sub

Hi,

um zum nächsten Datensatz zu kommen, gibt's die MoveNext-Methode. Das ganze hübsch in einer Schleife - und Du kannst alle Datensätze bearbeiten.

Gruß, Körk

ÖHM, wie geht das?

Nach dem Setzen der Variablen:

Namen.MoveFirst

do until Namen.EOF

...(Dein Code bis einschließlich "EditName Namen, Sportlerin")

Namen.MoveNext

loop

Jetzt wird alles für jeden Datensatz in "Namen" ausgeführt, bis zum letzten Datensatz (EOF=End Of File).

Gruß, Körk

Gut das klappt auch wunderbar, nur leider habe ich noch ein winziges Problem. manchmal sind keine Einträge vorhanden, dann ist die Zelle leer. als ich es gerade durchlaufen liess, kamm dann "Ungültige Verwendung von Null". Peng, weg.

Dann habe ich versucht eine Abfrage hinzubekommen, die die Null auffängt ( if Name!Sportlerin = null then machirgendwas), aber leider ging es nicht. hmm hat da einer ne idee zu?

Versuchs mal mit

if IsNull(Namen!Sportlerin) ...

Gruß, Körk

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.