Gegevens toe voegen wil niet lukken...

Status
Niet open voor verdere reacties.

MeneerVDJan

Gebruiker
Lid geworden
23 mei 2015
Berichten
9
Hallo allemaal,

Ik heb op het internet een stukje code gevonden wat ik graag zou gebruiken in mijn database,
maar ik krijg het maar niet voorelkaar.

het is een tekstbox en een listbox, en de waarden die in de textbox worden getypt staan in de listbox , mits ze bestaan in de tabel.
nu wil ik graag een waarde in mijn tabel zetten via die textbox , maar krijg dat niet voor elkaar.

eigenlijk is het "bestaat het niet dan voeg ik het toe "

wie kan mij helpen,

groet,
Jan.
Bekijk bijlage probeer.zip
 
Ik snap eerlijk gezegd niet zo veel van je db, van je relatie tussen de tabellen en van je vraag :). Kortom: vertel eens wat de bedoeling is, want zo kom ik er niet uit. Begin eens met je formulier, dat is gebaseerd op de tabel Producties, maar je laat daar niet alle velden uit zien. De keuzelijst die je hebt gemaakt, laat daarentegen alle waarden zien uit dezelfde tabel. Erg onbegrijpelijk allemaal.
... en de waarden die in de textbox worden getypt staan in de listbox , mits ze bestaan in de tabel. nu wil ik graag een waarde in mijn tabel zetten via die textbox , maar krijg dat niet voor elkaar.
Kijk, dat snap ik dus niet! Een tekstveld dat is gebonden aan een tabel (en dat is dit veld) slaat per definitie de waarden op in de tabel! Daar heb je helemaal geen code voor nodig! Kwestie van een nieuw record aanmaken en de nieuwe waarde invullen. Wat jij doet, is het muteren van het eerste record. En dat lijkt mij niet de bedoeling, als ik je vraag zo lees. Maar dan nog blijft de vraag bestaan wat je met die keuzelijst moet.
 
het doel is...

Hallo,

dank voor de reactie,

in de database staan een aantal productienummers.

door middel van het tekstvak kun je een productienummer opzoeken , maar als het nummer niet bestaat wat je ingegeven hebt, dat dan de mogelijkheid bestaat om deze toe te voegen.
d.m.v. een knop .
ik heb het geprobeerd met ifnot exsist ......

en meerdere voorbeelden , maar helaas.

ik hoop dat u mij een eindje op weg kan helpen

groeten,
Jan.
 
Je aanpak is verkeerd. Om te beginnen: als je iets wilt opzoeken in dezelfde tabel als waar de gegevens in staan dan doe je dat bij voorkeur met een niet-gebonden keuzelijst (met invoervak) die je in de koptekst zet. Niet met het gebonden tekstvak dat al gekoppeld is aan het betreffende veld.
Daarnaast is je insteek ook op een andere manier verkeerd. Als een productienummer niet gevonden wordt (kan ook heel simpel met de zoekfunctie: rechtsklikken in het tekstveld > Tekstfilters > Bevat en zoeken maar ;) ) dan moet je een nieuw record aanmaken voor dat productienummer. Maar dan moet je alle velden die bij een record horen invullen, niet alleen het productienummer. Lijkt mij. Kortom: de actie zou dan moeten zijn: maak een nieuw record aan.
Op tekstvakken kun je niet zo bar veel, op keuzelijsten (met invoervak) wel. Daar heb je de gebeurtenis <Bij niet in lijst> en die is prima te gebruiken om de actie te triggeren.
 
De keuzelijst...

Hallo,

Eerst maar even een kleine uitleg over de database die nu reeds in ons bedrijf draait,

Wij zijn een behangfabriek , en hebben een kleurmakerij waar de kleuren voor het behang gemaakt worden.
een productienummer is (zeg maar) het dessin nummer van een rol behang.
een dessin wordt meerdere keren per jaar gedraaid.
Op een dessin zitten meerdere kleuren, en soms moeten die kleuren wel eens worden veranderd.

En dat willen we bijhouden in een database.

op het moment moeten we eerst kijken of een productienummer bestaat, en zo niet dan moeten we hem invoeren.

ik denk dat met deze opzet je kunt kijken of het Nr bestaat , en zo niet , dat het ingegeven Nr alsnog wordt ingevoerd

Groeten,
jan.
 
Ik heb ook zoiets voor me werk gemaakt, maar dan in een iets andere opzet.

Wat ik in dit geval gedaan heb is een formulier gemaakt waar alle velden opstaan incl. een search function.

Je kan daar dus zoeken op een specifiek nummer en als die gevonden is worden de velden geladen met die waardes.
Bestaat die niet heb je dus allemaal lege velden en kan je dat handmatig invoeren of met select boxen een aantal waardes kiezen.
 
Op basis van je verhaal snap ik je db nog steeds niet; Je hebt, als ik het goed bgrijp, in ieder gval een tabel met beschikbare kleuren nodig, en een tabel met Dessins. Een dessin bevat meerdere kleuren, dus je hebt een derde tabel nodig die de twee koppelt. In die koppeltabel maak je voor elke kleur in een dessin een apart record, dus een dessin met 4 kleuren krijgt dan 1 record in de tabel Dessin en 4 records in de tabel Dessin_Kleur.
Het formulier dat je maakt gebruikt de tabel Dessin als hoofdformulier, en de tabel Dessin_Kleur als subformulier. Op die manier kun je heel snel nieuwe dessins toevoegen, en aan een dessin. Nieuwe kleuren. Die kleuren kies je met een keuzelojst met invoervak op het subformulier. Bestaat een kleur niet, dan gebruik je de gebeurtenis <Bij niet in lijst> om de kleur toe te voegen.
Dessins kun je opzoeken in de koptekst van het hoofdformulier met ook weer een keuzelijst. Vind je 'm niet, dan bestaat hij niet en maak je een nieuw record aan.

Tot zoverre niks spectaculairs en redelijk doorsnee. Ware het niet dat jouw db niet zo is opgezet, want daar ziemik maar twee tabellen in een één-op-één relatie, wat Op zich al heel vreemd is.
 
oplossing ????

Sorry Misschien voor mijn onduidelijke uitleg....

En het bestand wat ik erbij had gedaan (even snel in elkaar geflanst ) is eigenlijk een 1 op veel relatie

in de hoofd tabel komen de productienummers,
in de child tabel komen de gegevens van een veranderde kleur als zijnde _welke verf _welke week _welke kleurnR _ welke machine _ enz enz

Maar dat is helemaal niet relevant , mijn vraag is "hoe voeg ik een productienummer toe als hij niet bestaat "

De database heb ik al een maand geleden gemaakt , en draait met volle tevredenheid reeds in ons bedrijf.

maar collega`s vonden het lastig om eerst een Productienummer op te zoeken , om vervolgens alsnog in te voeren als het nummer niet bestond

Nu is mijn kennis van Access en VBA niet zo heel erg groot, en ik heb de database dan ook met de vele tutorials op het internet in elkaar gezet,
maar het probleem van toevoegen kreeg ik niet opgelost

tot dat OctaFish over <bij niet in lijst> begon,

daar ben ik nu mee bezig , en denk dat ik dat nu wel voor elkaar ga krijgen

Sommige mensen openen de Ogen

groeten,
Meneer van de Jan...
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan