10. marts 2005 - 17:15Der er
4 kommentarer og 1 løsning
Bruge Excel (2002) som front-end til database (SQL Server)
Jeg har behov for at udvikle et Excel add-in, for at bruge Excel som front end til en SQL Server.
Formålet er at lave det mulig for brugerne at fortsætte med at bruge Excel til at lave budgetter/prognoser i, men samtidig sikkre at data bliver gemt på en central database.
Jeg forestiller mig, at have et skjult ark, hvor der defineres ranges der skal gemmes/opdatares til/fra database. Der vil nok også være skjulte rækker/kolonner der indeholder ID'er på de rækker og kolonner der skal gemmes. Brugerne skal, når de åbner arket, kunne refreshe sine tal fra databasen, og når de er færdige med at ændre sine tal, skal ændringer (og kun ændringer) kunne gemmes ned i databasen. I udgangspunktet forestiller jeg mig at udvikle noget VBA der bruger ADO til at gemme/hente data fra database. Udfordringen bliver at lave koden så generel, at den kan genbruges på mange forskellige regneark, sålænge de opfylder nogle krav til hvor informationer om aktuelle ranges er, og også indeholder nødvendige ID'er til at hente/gemme i databasen.
Har nogen tilsvarende erfaringer som de kan viderebringe, eller eventuelt har link til nogle eksempler på sådan funktionalitet?
Lyder spændende da jeg selv bruger excel som front end til access databaser i en lang række rapporter.
Desværre har jeg ikke, endnu, lavet data overførslen to vejs, men det er noget jeg kunne forestille mig at bruge i fremtiden.
Jeg kunne tænke at det måske var en løsning med et ark som henter data, og et ark som sender data, således kan man fra ind data arket hente data frem i det layout man vil, og i "ud data arket" lave en makro som sender data tilbage hvis de er forskellige fra det man hentede. Måske lidt kompliceret i forhold til hvad en super expert i VBA kan lave, men det er mine udmiddelbare tanker omkring to vejs kommunikation med en database.
Men mest af alt, så blot en kommentar for at kunne følge udviklingen :o)
Hej tonnym, og tak for din kommentar. Vi har også været inde på tanken om at have et ind-data-ark og et ud-data-ark, eller også have et ark skjult, hvor den egentlige datauveksling med databasen foregår, og så kan brugerne linke sig til data og dermed være mere fleksible i opstilning af sine data.
Foreløbig er vi gået lidt fra denne tanke, da vi også vil have cellekommentarer gemt i databasen, og måske også noget af formateringen (baggrundsfarve bruges i nuværende regneark til at indikere foreskellige 'stader' af data).
I første omgang vil vi nok lade brugerne indatere data direkte i det dataområde som skal udveksles i databasen, men vi vil definere nogle ranges som bliver udveklet med database, og alle områder udover disse, bliver kun gemt i Excel. Derved er der nogle områder af regnearket hvor der vil være nogle regler for hvordan opsætning og brug af disse områder skal være, samt nogle områder hvor brugerne frit kan gøre hvad de vil, men hvor de sidste områder ikke bliver behandlet.
hvordan havde i tænkt jer at gemme kommentarer og formatering i en sql-database ? Bortset fra det lille issue, så ville tonnym's problem være til at løse, hvis man brugte skabeloner til brugerne (det er vel i princippet det man gør). hvis man bruger guiden "Skabelon med datasporing" få man mulighed for at bruge en accessdatabase (eller et excel regneark, dbase-fil mv.) til at gemme nøjagtig de felter man har lyst til. Så er problemet vel kun at få data hentet ind, men det ser ud til at du godt kan, tonny. Lorentsnv's problem kan ikke løses på den måde, da vi her taler om en sql-database og det ser umiddelbart ikke ud til at datasporing understøtter dette. Vil lige tænke videre over det :-)
Jeg lukker spørgsmålet nu. Jeg fik lavet en løsning med .net til Excel 2002, ved at bruge Office XP Primary Interop Assemblies (PIAs). Derved kunne jeg lave en vb.net løsning hvor jeg lavet en Excel add-in som sendte alle data til en central database, og hentet alle data tilbage fra central database for rapportering.
Jeg brugte ikke nogen af svarene i denne løsning, da der ikke var noget nye i dem, og har derfor i udgangspunktet ikke uddelt poeng. Hvis i er ueninge i dette, hører jeg gerne fra jer.
Synes godt om
Ny brugerNybegynder
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.