10. december 1999 - 15:55Der er
2 kommentarer og 1 løsning
Vælg tegnsæt ved VBA-styret text eksport
Jeg skal eksportere nogle data fra en Access-forespørgsel via VBA. Det fungerer også nogenlunde via DoCmd.runSQL - men mit problem er at Access vælger OEM i stedet for ANSI som tegnsæt - hvilket resulterer i problemer med æøå. Jeg kan godt rette i schema.ini filen, efter at have kørt forespørgslen én gang - men det kræver at jeg kører alle forespørgsler 2 gange. Jeg har set MS-help, som forklarer hvordan man kan ændre default i registreringsdatabasen, men jeg ved ikke på forhånd hvilken maskine programmet køres fra. Det jeg er ude efter er som førsteprioritet at kunne sætte CharacterSet=ANSI direkte ved kørsel. Andenprioriteten (hvis ovenstående ikke kan lade sig gøre) at få Access/VBA til selv at læse og evt. rette i registreringsbasen.
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
I VBA bør du kunne sætte charset direkte som en kommando, alternativt som en property for det table du åbner. Normalt vil charset dog være et tal der angiver et bestemt charset hvor 0 som regel er default.
På samme måde som når du for en form kan sætte charset som en property skal du også kunne sætte den for adgangen / udtræk af data fra Access, inden du åbner databasen.
Hvordan det gøres i VBA ved jeg ikke helt, men du kan formentligt styre noget af det via din database driver (alias/ODBC driver) således at når du åbner databasen er det med et bestemt charset.
Og at det kan lade sig gøre er der ingen tvivl om. MS sælger jo samme version af hhv. VBA og Access til mange forskellige lande og det kan de kun gøre hvis de forskellige landes tegnsæt kan bruges til f.eks. sortering o.s.v.
Desværre ikke flere end jeg havde i forvejen. Man kan i nogle tilfælde benytte en "Schema.ini" fil, hvor bl.a. tegnsæt kan defineres - men der skal så vidt jeg kan se laves en sektion for hver eksportfil - jeg har i hvert tilfælde ikke kunnet finde en måde at sætte charset globalt.
MS har en smule om det i hjælp under "Initialisering af Text-datakildedriveren" - hvis du kan få+ mere ud af det end jeg må du endelig skrive igen. /jgc
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.