Avatar billede hamsjell Nybegynder
24. juni 2004 - 08:38 Der er 3 kommentarer og
1 løsning

Oprette "VBAfunktion" i Excel til at lave opslag via ODBC

Jeg har følgende problemstilling :

Jeg vil gerne have at brugeren der åbner excel-arket bliver promptet for at indtaste nogle variabler (eks. varenummer eller dato eller lign.)
Disse variabler skal så bruges i et SQL script i VBA til  at lave opslag via ODBC til min AS/400.

Jeg har SQL sciptet, jeg har excel arket til at lave korrekt output (hvis jeg indsætter mine variabler i MS Query)
Det jeg ønsker er at gøre excel arket mere brugervenligt.

Jeg er helt ny i forhold til VBA, men har set at man kan lave sådan noget lignende bl.a her : http://www.eksperten.dk/spm/512160

Kort sagt :
1. Ved åbning af excel ark - åbnes automatisk "bruger-dialogboks"
2. Bruger indtaster variabler i "bruger-dialogboks"
3. Disse variabler bruges som selectering i SQL mod AS/400 (ODBC)
4. Resultatet præsenteres i regnearket

er der nogen der har et bud ?
Avatar billede bak Forsker
25. juni 2004 - 12:07 #1
Hvis du benytter msquery til dette kunne du gøre følgende:
Når wizarden slutter vælger du "Show data or edit query i msquery"
Under view vælger du at vise Criteria
På de kolonner hvor du ønsker variable parametre indsat, vælger kolonnen i Criteriafiled og i Value skriver du =[MinFørsteParameter]
[] gør at det er en parameter, der bliver spurgt om.
Vælg så at returnere data til excel
Der kommer nu en boks op hvor du skal klikke på Parameters:
Nu kan du vælge om du skal promptes hver gang du refresher eller du vil bruge en fast værdi eller om du vil hente parameterne fra regnearkets celler.
Hvis du vælger det første og i querys opsætning vælger "Refresh on Open" bliver du automatisk promptet for parametrene ved opstart.

Hvis du vælger den sidste løsning skal du indtaste parametrene i regnearket først.
Sidste løsning kan du kombinere med en brugerdefineret dialogboks hvor du får dialogboksen til at indsætte værdierne i cellerne og derefter køre en opdatering..
Avatar billede hamsjell Nybegynder
25. juni 2004 - 12:50 #2
Tak for løsningen - det er lige det jeg søger - tak
Hvor er det simpelt (når bare man kan)
lig lige et svar, så får du point !
Avatar billede bak Forsker
25. juni 2004 - 16:17 #3
:-)
Avatar billede hamsjell Nybegynder
28. juni 2004 - 07:42 #4
tak
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester