14. januar 2006 - 16:24Der er
13 kommentarer og 2 løsninger
Importere data fra Excel til access og køre en tilføjelsesforsp.
Hej Eksperter.
Jeg har en opgave jeg gerne vil have løst, og jeg er overbevidst om at access kan løse den, jeg ved bare ikke hvordan. Det er jo så her I kommer ind i billedet. ;-) Jeg har en stor database, som bla. indeholder en tabel med "kundedata". Jeg vil gerne aut. have oprettet/tilføjet nogle faktura i en anden allerede oprettet tabel kaldet "faktura", bla. ved hjælp af en tilføjelsesforespørgsel. Problemet at at jeg ikke vil have dem sammenkædet, da historiske data i "faktura" så vil ændre sig hvis jeg ændre noget i "kundedata" ex. navn eller adresse efterfølgende. Jeg har så tænkt på at eksportere dataerne til et excelark (på den måde får jeg "døde" data) fra "kundedata" ved hjælp af en forespørgsel, som først finder de relevante data og dernæst eksportere dem. Dernæst ville jeg importere dataerne fra excelarket og oprette dem i "faktura". Det bør vel ikke være så kompliceret men jeg ville jo gerne have at det hele forgik aut. ved klik på en knap som så aktiverede en makro der kører det hele. Mit spørgsmål, er det sådan jeg skal gøre, eller er der en måde jeg ikke set?? Og hvad gør jeg konkret? Jeg skal sige at jeg er godt inde i access men ikke så meget i SQL. Håber på hjælp :-)
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Du vil gerne bevare historiske data ?? Når du har lavet en faktura vil du gerne gemme data om hvor kunden boede på det tidspunkt og hvad varen kostede på dette tidspunkt?? Hvis du bruger din opdaterede kundetabel og din opdaterede varetabel vil et opslag evt. give en forkert adresse og en forkert pris i forhold til den gang fakturaen blev lavet?? Løsningen er at gemme disse data i en separat tabel, der er ingen grund til at blande Excel ind i dette, når fakturaen bliver dannet skal der samtidig skrives i den historiske tabel. Du kan lave en opdateringsforespørgsel der skriver i den historiske tabel eller du kan kode dig ud af det. hvsi du vil have mere hjælp er det nødvendigt at vide hvad tabellerne hedder og hvilke felter det drejer sig om.
ffsoft... du har helt ret. Jeg vil gerne gemme de historiske data fra dengang fakturaen blev lavet. Ok jeg skal lave en opdateringsforespørgsel der skriver i en historisk tabel. Skal jeg lave en tabel der hedder "historisk faktura data"? Som indeholder de felter de bruges i faktura? Hvordan får jeg dataerne over i den hisstoriske tabel? Du behøver ikke beskrive i detaljer med feltnavne hvad jeg skal gøre, men det ville være rart med en step-by-step rundtur, sådan i grove træk. Om muligt. Dataerne til faktura er fra stamdata, og indeholder i grovetræk, kundenr, navn, adresse mv. og varer samt pris felter. Men dvs. når jeg har oprettet de nye data med de nye jeg skal fakturere, så smider jeg de nødvendige data over i en historsik tabel og herefter skal de videre til fakturatabelen??
Du har fat i den rigtige ende. Læg data i fakturatabellen sådan som du hele tiden har gjort. Historik tabellen skal indeholde de felter som du synes det er interessante at gemme og selvfølgelig primærnøglen fra fakturatabellen.
Insert into tblHistorik Select * from tblFaktura Where FaturaID = NyesteFakturaNummer
Det er ikke muligt at være mere præcis, uden at kende tabelnavne, feltnavne og relationer. Jeg kan forstå at du arbejder med noget der er vitalt for landets interesser og derfor ikke kan afsløres her.
ok, du har humor. ;-) Insert into tblHistorik Select * from tblFaktura Where FaturaID = NyesteFakturaNummer..... hvor skal det stå? En makro? En knap?
Jeg kan godt se nu hvad jeg skal gøre. Men mit problem har netop også været hvordan jeg for access til at gøre ovenstpende, altså, skulle jeg oprette en en knap, VedKlik ex.??
Prøv i første omgang at tilknytte det til hændelsen on_click på en knap, når det så virker kan du bruge den hændelse som laver fakturaen til osse at skrive til historik tabellen.
ok, jeg et fint stykke af vejen. Arbejder med at få den til at skrive de relevante data til historikken først. Så kan jeg altid skrive til og oprette faktura bagefter. Dog har jeg et enkelt felt som driller. Det er et felt som har relationer og som er et opslagfelt i faktura. Det bestemmes ud fra kriterier, og hvor jeg normalt selv vælger i et drop-down vindue. Hvordan skriver jeg i opdateringsforespørgslen, hvad den skal vælge? I fakturatabellen ser den i en anden tabel. SÅ den skal vel slå teksten op? Forstår du hvad jeg mener?
øhh, dvs i et kriterieudtryk bliver det noget med: IIf[prøve]=yes;variabel=me!comboboksnavn hvor "variabel" er den tekst der skal stå i feltet (som også er en valgmulighed i drop-down menuen) hvis [prøve]=yes og comboboksnavnet er navnet på den tabel hvor indeholdet i comboboksen står?? Eller? Drop-downmenuen kommer nemlig fra et oslag i en tabel som hedder "abtekst". Ex. et af ordene den slår op i tabellen "abtekst" hedder "standard" så kunne jeg skrive:
ups, trykkede send for tidligt..... Drop-downmenuen kommer nemlig fra et opslag i en tabel som hedder "abtekst". Ex. et af ordene den slår op i tabellen "abtekst" hedder "standard" som jeg vil vælge, så kunne jeg skrive: IIf[prøve]=yes;standard=me!abtekst ??? problemet var nemlig når jeg ville føre de historiske data over i og oprette en faktura, ville den ikke indsætte teksten i mit dropdown felt, da det skulle være et tal der ref. til den tabel hvorfra dropdown dataerne kom fra. Så nu hvor jeg har vendt det hele i hovedet igen ;-) kan man sige; Hvordan skriver jeg i de historiske data så access ved indsæt og opret af faktura kan finde den rigtige tekst i dropdown menue feltet?
hmm, det bliver mere og mere kompliceret jo længere jeg dykker ned. I min faktura i dag, har jeg en relation mellem feltet kundenr og tabellen stamdata. Således at når jeg taster kunde nr ind i faktura henter access aut. navn, adresse m.m. fra tabelen stamdata. Men hvad når jeg vil lave min opdateringsforespørgsel? Og indsætter kunde nr, vil relationen så overskrive de data jeg hiver med over også? Altså bla. navn adresse, m.m.? Vil der komme en konflikt mellem samme data fra to forskellige kilder?? Og hvis jeg fjerne relationen mellem feltet kundenr og tabellen stamdata, hvad sker der så med mine eksisterende data?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.