Access Problemchen


Status
Not open for further replies.

robb

Well-Known Member
Joined
Sep 15, 2005
Messages
1,485
Location
Bad Nauheim bei Frankfurt/Main
LOCATION
Bad Nauheim bei Frankfurt/Main
hey, hab nen kleines problem mit access.

habe zwei tabellen. in der einen die eine sagt in etwa: maschine, anzahl rollen typ1, rollen ID typ1, anzahl rollen typ2, rollen ID typ2.

die zweite: rollen ID, durchmesser, länge, etc.

jetzt möchte ich in zwei felder die durchmesser der beiden rollen zu einer maschine haben.

habe textfelder und diese wollt ich per ausdrucksgenerator füllen, aber ich bräuchte sowas wie ne if-abfrage denk ich...

falls das nicht mit dem ausdrucksgenerator geht, sondern nur per vba, dann sagt mir bitte wohin ich das genau schreiben muss.
 
Hallo Robb,

warum machst du nicht einfach eine neue Abfrage ?
Über die Rollen_ID hast Du doch einen eindeutige Zuordnung
zu den einzelenen Rollendaten.

Alle Felder, die Du für die Anzeige brauchst aufnehmen und dann die beiden Tabellen
über die Rollen-ID verknüpfen.
Einfach die ID aus der einen Tabelle anklicken, festhalten und auf die ID der
zweiten Tabelle ziehen.

Gruß Heiko
 
EDIT BY Thrake: 5 Posts hintereinander zusammengefasst. oh man, wozu gibt es den "edit"-Button.


okay,
hab jetzt ne abfrage gemacht:

im feld steht rollen durchmesser aus der rollen tabelle.

und oben sind die maschinen tabelle und die rollen tabelle verknüpft bei "rollen ID typ 1" und "rollen ID"

wenn die die abfrage einfach so laufen lasse werden mir die vier verschiedenen rollen durchmesser angegebeben, die es als typ1 rolle gibt. soweit so gut.. denke das passt.

so und jetzt habe ich das entsprechende feld folgendermaßen gefüllt: =[Abfrage3]![Roll diameter]

aber dort in das feld kommt dann nicht der entsprechende richtige durchmesser sondern nur: #Name?

wenn ich z.b. mal testweise nen listenfeld mit der abfrage anzeigen lasse, dann kommen die 4 korrekten werte.

aber irgendwie muss ich dem einen feld doch sagen, "guck mal oben welcher datenbanksatz zu welcher maschine grade angezeigt wird und gib mir dann aus der abfrage den passenden wert."

kann es nicht auch so irgendwie gehen?
Code:
=SELECT( [Roll diameter]  FROM [Roll Information] WHERE [Roll Information]![Roll ID] = [Segment Information]![Type 1 Roll ID])
hab das ausm internet und versucht auf mein problem umzuwandeln, aber es gibt nur ne syntaxfehlermeldung wegen der klammern.

so hab immerhin den syntaxfehler gefunden:
Code:
=(SELECT Roll Information]![Roll diameter]  FROM [Roll Information] WHERE [Roll Information]![Roll ID] = [Segment Information]![Type 1 Roll ID])

gehen tut es natürlich trotzdem nicht :(

so ich nochmal ;-) ich schreib hier einfach mal weiter, auch wenn keiner antwortet ;-)
Code:
SELECT [Roll diameter] FROM [Roll Information]WHERE [Roll Information]![Roll ID] = [Segment Information]![Type 1 Roll ID];

diesen code hab ich jezt nochmal als abfrage gemacht. habe gecheckt, dass es nicht funzt wenn man sowas in das steuerelemente feld schreibt.

die abfrage funktioniert auch super. er fragt mich nach der Type1 Roll ID und wenn ich dann die nummer eingebe holt der aus der anderen tabelle den passenden durchmesser.

mein problem ist jetzt diese abfrage in das formular zu übertragen.
das formular hat als datenherkunft die segment information. aber da ist ja auch die type1 roll ID drin, warum kann der die nicht auslesen?
 
Hallo robb,

folgendes Select ( sinngemäß ) sollte eingetlich gehen :

select tb1.maschine,tb2.maß1 from tb1,tb2 where
tb1.roll_id1 = tb2.roll_id1

Gruß Heiko
 
EDIT BY Thrake: Doppelpost zusammengefügt und DICHT.

verstehe den anfang nicht ganz.

was soll denn tb1.maschine,tb2.maß1 ?
ich will doch nur den durchmesser haben. müsste es dann nicht so sein:
Code:
select Roll Information.roll diameter from Segment Information,Roll Information where Segment Information.Type 1 Roll ID = Roll Information.Roll ID

geht auch nicht. syntaxfehler..

hab dann
Code:
= (select Roll Information.roll diameter from Segment Information,Roll Information where Segment Information.Type 1 Roll ID = Roll Information.Roll ID)
draus gemacht. bringt auch nichts.

oder sollte ich das jetzt woanders eingeben?
hab es wieder in den steuerelementeinhalt des textfeldes eingegeben.
ich finde im vb code auch nicht die stelle wo die textfelder initialisiert werden. nur die buttons etc.

juhu!

hab es hinbekommen.
mit der liste geht es ohne probleme. da kann man ja direkt sagen eine abfrage als datenherkunft.
habe die liste dann einfach so groß gemacht wie nen textfeld und gut ist.
aber das ganze hatte auch sein gutes. hab wieder neue sachen gelernt.
meine datenbank nimmt langsam gute formen an, dafür dass ich access erst seit letzter woche mache.
 
Status
Not open for further replies.
Back
Top