Probleem met het importeren van Excel, komt nadien niet in query voor

Status
Niet open voor verdere reacties.

tomswaelen

Gebruiker
Lid geworden
8 dec 2004
Berichten
349
Ik heb volgende bestanden:

Access-tabel (natuurlijk)
Excel-bestand dat aangemaakt werd door bovenstaande tabel te exporteren

Ik heb daarna de tabel leeg gemaakt, wat lijnen verwijderd uit de Excel.

Daarna importeer ik de Excel opnieuw in de tabel, alles verloopt perfect.

Op diezelfde tabel heb ik ook een vrij simpele samenvoegquery die bovenstaande tabel samenvoegt met nog andere tabellen en een simpele filter (een bepaalde kolom moet leeg zijn).

De geimporteerde lijnen uit de Excel komen echter niet voor in die query, en ik kan niet vinden waarom. Ik zit idd met een AutoID-veld, maar dat neem ik niet over uit de Excel. De geïmporteerde lijnen krijgen dus ook een nieuw AutoID nummer.
Ik heb dit ook al geprobeerd met andere formaten, zoals CSV, zodat er zeker geen opmaak mee gaat.

Waar kan dit aan liggen? Spijtig genoeg kan ik de database zelf niet in bijlage steken, aangezien de database vertrouwelijke info bevat.
 
Een ander format importeren/exporteren gaat je niet helpen, want het probleem ligt natuurlijk niet in de opmaak; die staat er volledig buiten. De enige (logische) reden dat bepaalde records niet geïmporteerd worden, ligt er in dat er sleutelconflicten zijn. Even voor mijn beeld:
1. Je hebt een tabel in Access, die je hebt geëxporteerd naar Excel (om te muteren vermoed ik?)
2. De Access tabel heb je leeggemaakt en dient nu als importtabel voor andere tabellen
3. Je importeert het aangepaste Excel bestand in Access (in de oorspronkelijke tabel). Deze bevat nu (een aantal van) de oorspronkelijke gemuteerde records
4. De importtabel (tabel 1 dus) wil je importeren in een andere Access tabel m.b.v. een toevoegquery. Of begrijp ik het verkeerd, en gebruik je een UNION query?

Stel dat je inderdaad een UNION query gebruikt, dan zou je op zijn minst alle records moeten kunnen zien, want een query heeft geen conflicten. Die doet wat jij 'm opdraagt. Je hebt dan nog wel twee varianten, die een klein verschil maken: UNION en UNION ALL. Daar kun je dan nog even mee stoeien.
 
Het was misschien inderdaad niet helemaal duidelijk :)

Mijn dbase bevat een aantal tabellen (bv. 1, 2 en 3)

Tabel 1 moest ik exporteren naar Excel om daar te bewerken (ging niet anders)
Daarna heb ik tabel 1 leeg gemaakt
Uit die Excel heb ik lijnen verwijderd
Daarna wil ik die Excel opnieuw importeren in Tabel 1.
Bovenstaande lukt allemaal zonder problemen.

Ik heb echter ook een query die tabel 1 combineert met gegevens uit andere tabellen. De relaties tussen de tabellen liggen ook juist. Dit heeft altijd zonder problemen gewerkt, en doet het nog altijd.

Alleen laat die query de geimporteerde records uit Excel niet zien, terwijl ze wel degelijk in tabel 1 staan. Als ik records manueel toevoeg aan de query, lukt het wel, die records laat hij gewoon zien....
 
Als je tabellen koppelt, doe je dat op basis van overeenkomende velden. Als je het ID veld gebruikt, en opnieuw importeert, krijg je andere nummers, dus dan snap ik wel dat het niet meer koppelt.
 
Dat is het hem net, dat doe ik ook niet :) Ik koppel op basis van andere velden, die ook uniek zijn. Je kan het vergelijken als zou tabel 1 de postcode bevatten, en tabel 2 de postcodes en de gemeentes. De query geeft dan bv. klantnaam, postcode en gemeente weer. Werkt allemaal perfect voor nieuw toegevoegde records, alleen niet voor die geïmporteerde....
 
Zolang in tabel1 het veld [postcode] uniek is, heb je verder ook geen extra ID veld nodig natuurlijk, de postcode is immers al uniek. En dat zou dan ook het sleutelveld moeten/kunnen zijn. Of op zijn minst geïndexeerd met unieke waarden. Dan kun je daar prima een koppeling mee maken met andere tabellen. Kortom: als je niks ziet, zijn er ofwel geen gerelateerde records, wat volgens jou niet het geval is, ofwel komen de gegevenstypen niet overeen.
 
Dan zou het moeten zijn dat de gegevenstypen niet overeenkomen. Maar zou ik dan geen import error moeten krijgen? De gehele import gebeurt zonder één enkele foutmelding...

De records in tabel 1 hebben idd een AutoID, maar die doet verder niets. De records in tabel 1 zijn gelinkt via een ander record (dossiernummer in casu) aan een andere tabel, dat meer gegevens over die dossiers bevat (met maar 1 record per dossier, dus dossiernummer is de unieke sleutel in mijn dbase).
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan