Nieuwe waarden in tabel!

Status
Niet open voor verdere reacties.

Japsur

Gebruiker
Lid geworden
9 apr 2004
Berichten
650
Hallo,

Ik was weer eens bezig met access/excel.
Ik heb een ledenlijst in access draaien, maar ik krijg telkens lijsten aangeleverd in excelformaat. Nu wil ik heel simpel importeren, normaal geen probleem. Maar in de tabel staan waarden achter de namen van de mensen die er al in staan en die MOETEN erin blijven staan. Dus wanneer ik gewoon importeer staat die naam er 2x in. Dit is dan ook weer niet de bedoeling. Hoe kan ik alleen de namen die in excel staan en niet in access importeren. Dus alleen nieuwe leden? Verwijderen van mensen uit access hoeft niet, dit hoeft maar 1x per jaar te gebeuren nadat alle gegevens die achter de namens staan weg zijn. Maar in tussentijd ontvang ik telkens nieuwe lijsten. En hoe doe je dat met access/access. Dus op dezelfde manier als ik wat ik voor access/excel wil?
Heeft iemand een oplossing hiervoor? Laat dan even wat van je horen!
Alvast bedankt,
 
mogelijkheid no1

In een database heb ik automatisch het toevoegen van gegevens in een tabel ingebouwd in het schakelbord. ACCESS voert dan een toevoegquerie uit op steeds dezelfde tabel. Om te bereiken wat je wilt moet je dan twee dingen doen (behalve de toevoegquerie maken):
1. het veld naam moet uniek worden ( sleutelveld of indexeren op ja, geen duplicaten) zodat bij de import een naam maar 1x wordt geimporteerd;
2. om te voorkomen dat je allerlei foutmeldingen krijgt van de namen die er al in voor komen moet je deze foutmeldingen uitschakelen. In een gebeurtenisprocedure doe je dat zo:

'Waarschuwings meldingen uitschakelen
DoCmd.SetWarnings False

'Query voor het toevoegen van de leden uitvoeren
DoCmd.RunSQL qry_insert

'Waarschuwings meldingen weer inschakelen
DoCmd.SetWarnings True

'Bericht geven aan gebruiker
MsgBox "De namenlijst is met een beetje geluk bijgewerkt."

Als je dan ervoor zorgt dat de nieuwe Exellijst dezelfde structuur heeft en als tabel in ACCESS steeds dezelfde naam krijgt kun je deze handeling iedere keer uitvoeren door bv gebeurtenisprocedure onder een knop te hangen.

Suc7
 
Kun je je verhaal wat nader toelichten?? puntje 1 krijg ik nog wel voor elkaar. Ik heb eigenlijk 2velden voor de naam, een voor en achternaam. En waar moet ik die gebeurtenisprocedure aanmaken en hoe moet ik m'n toevoegquery opbouwen, want je importeert...
Graag een reactie
 
deel II

Omdat je twee velden hebt die samen neem ik aan uniek zijn (voor en achternaam) kun je daar een sleutel op zetten (dat kan volgens mij op twee velden). In mijn geval importeerde ik iedere keer een Exel bestand in ACCESS en gaf het dezelfde naam bv Tabel1. Dan kun je ook een toevoegquerie maken waarin je aangeeft waar de velden van Tabel1 toegevoegd moeten worden ( oa in de velden naam en achternaam van je tabel Ledenbestand) zodra je de querie start. Importeer je een volgende keer een bestand als Tabel1 zullen alleen nieuwe records erbij gezet worden. Andere worden geweigerd door de sleutel (geen dubbele waarden). Door het in de procedure "uitzetten" van de foutmeldingen zul je hier niets van merken.
Waar je de procedure neerzet hangt van je database af. In mijn geval had ik hem in het formulier schakelbord bij de eigenschap "bij openen" gemaakt. Je kunt het bv ook achter een knop hangen in een formulier zodat je de querie uitvoert zodra je op het knopje klikt. Dat mag je zelf bepalen.
Overigens denk ik zelfs dat je ook het importeren in een macro kunt uitvoeren zolang je exelbestand maar iedere keer dezelfde naam heeft en op dezelfde plaats staat (bv C:\). In dezelfde macro zou je dan vervolgens het uitvoeren van de toevoegquerie kunnen opnemen. Dat mag je zelf uitzoeken.
Suc6
 
Je kunt een excelsheet koppelen aan access alsof het een tabel is.
Vervolgens kun je normale queries gebruiken om de gegevens in het excelsheet verder te verwerken.

Ga naar het database venster, tab tabellen. Druk op de rechter muisknop en kies tabellen koppelen. Kies als bestandstype Microsoft Excel en ga naar je Excel sheet. Volg vervolgens de wizard van Access om je werkblad te koppelen.
 
Ik ben er dankzij annemarie uitgekomen. Werkt leuk. Ook die manier van jou bartels is weer eens simpel en handig. Maar ik krijg complete lijsten aangeleverd waar nieuwe namen in staan. En dan denk ik dat het koppelen niet echt leuk werkt!
Maar iig bedankt! Opgelost!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan