Avatar billede Kim Neesgaard Seniormester
18. juni 2007 - 12:48 Der er 13 kommentarer og
1 løsning

Skrive data til en specificeret Excel celle

Jeg vil gerne kunne skrive en værdi til en specificeret Excelcelle, fx. vil jeg gerne kunne indskrive værdien '10,4' i celle A5 i regnearket Test.xls i fanen Ark1.

Jeg har indledningvis etableret en connection til regnearket og forsøger mig med en Cmd.ExecuteNonQuery( strSQL, Conn) og fx.

UPDATE [Ark1$] SET Ark1 = '10,4'

men får fejlen: Der er ikke angivet nogen værdi for en eller flere krævede parametre.

Nogen ideer til, hvordan det kan gøres?
Avatar billede websam Nybegynder
19. juni 2007 - 16:46 #1
Hvis du benytter dig af OleDbConnection til dit excel ark og definere en range i dit ark kan du benytte ganske almindelig Sql til at lave select, insert, update og delete i dit excel ark.

Se evt. denne artikel :
http://www.aspfree.com/c/a/ASP.NET-Code/Read-Excel-files-from-ASPNET/

I denne er der godt nok kun vist en select, men principperne er de samme ;o)
Avatar billede Kim Neesgaard Seniormester
21. juni 2007 - 17:57 #2
Select kan jeg fint få til at virke, men syntaxen for en update kan jeg ikke finde. Jeg har prøvet at kalde celle A1 for et range: RangeA1 og så bruge:

UPDATE [Ark1$] SET [RangeA1] = '10,4'

men den melder om manglende parametre?
Avatar billede websam Nybegynder
22. juni 2007 - 20:01 #3
en range er som følger :
  A    B          C
1 Id    Fornavn    Efternavn
2 1    Per        Peterser
3 2    Anne      Hansen

Du markere nu disse felter og vælger Vis > Navn > Definer og laver på denne måde en range.

Eks.
Du har lavet et navn myRange, med denne kan du så gøre følgende :

Select * From myRange Order By Id Desc

Update myRange Set Fornavn = 'Kurt' Where Id = 1
Avatar billede Kim Neesgaard Seniormester
23. juni 2007 - 12:45 #4
Jeg har forsøgt med denne:

UPDATE [Range1] SET F1 = 'XYZ' WHERE ID = 3

men får fejl:

System.Data.OleDb.OleDbException: Handlingen skal bruge en opdaterbar forespørgsel. at (og så ikke mere)

Hvad savner den mon?
Avatar billede websam Nybegynder
23. juni 2007 - 20:07 #5
Du skal sørge for at der er skriveadgang til dit excel ark, mere er der ikke i den fejl ;o)
Avatar billede Kim Neesgaard Seniormester
24. juni 2007 - 19:33 #6
Nu har jeg startet et helt nyt ark og dette er vel som standard ikke skrivebeskyttet? Jeg får stadig fejlen. Jeg har så prøvet at sætte macrosikkerhed til det laveste, men får stadig fejlen. Er der et andet sted, jeg skal justere i Excel? Er der specielle sikkerhedsforhold for et range?
Avatar billede websam Nybegynder
24. juni 2007 - 20:38 #7
Når du laver din range gør du det så som jeg beskrev ovenfor ?

Med skriverettigheder mener jeg at du skal tildele rettighedder enten på mappen excelarket ligger i eller selve excel arket altså skal du give rettigheder til at asp.net og IUSER kontoen må skrive til arket check lige det.

/Websam
Avatar billede Kim Neesgaard Seniormester
25. juni 2007 - 15:02 #8
Jeg har brugt Indsæt -> Navn -> Definer (som du sikkert også mener?)

Jeg har været inde på mappen, som Excelfilen ligger i, og givet 'Del denne mappe på netværket' og 'Tillad netværksbrugere at ændre i mine filer', men den giver stadig fejl. Jeg kan ikke finde et sted at give ASP.NET brugeren adgang (kører på en lokal maskine).
Avatar billede websam Nybegynder
25. juni 2007 - 16:26 #9
1. Åben en hvilken som helst mappe på din maskine og vælg Funktioner > Mappeindstillinger.

2. Derefter popper et vindue med 4 faneblade vælg fanebladet Vis.

3. Fjern fluebenet i "Brug enkelt fildeling (anbefales)"

4. Nu højreklikker du på mappen hvor din excel fil ligger og vælger Engenskaber her fremkommer nu et ekstra faneblad Sikkerhed, her kan du finde og give rettigheder til ASPNET kontoen.

Håber det hjælper ;o)
Avatar billede Kim Neesgaard Seniormester
28. juni 2007 - 22:20 #10
Hm - når jeg vælger Mappeindstillinger, så får jeg kun 3 faner frem. En af dem er Vis, men der er ikke en, der hedder "Brug enkelt fildeling (anbefales)"? Jeg puttede "Brug enkelt fildeling (anbefales)" i Google og fandt dette: http://support.microsoft.com/kb/307874/da og jeg har ganske rigtigt Home udgaven. Jeg har lige tjekket min arbejdsmaskine, der kører Pro, og her er muligheden. Jeg flytter det til den og lader dig udfaldet at vide!
Avatar billede websam Nybegynder
28. juni 2007 - 22:49 #11
Arhhh....med home udgaven er det ikke så nemt, men jeg afventer og høre udfaldet ;o)
Avatar billede Kim Neesgaard Seniormester
02. juli 2007 - 16:52 #12
Det gør ikke så meget med Home udgaven - jeg skal bruge funktionen på min arbejdsmaskine.
Jeg har nu fået sikkerhedsbladet frem, men hvad er det nu, at den nøjagtige syntax er til den anonyme ASP.NET bruger? Jeg kan ikke finde noget, som den vil 'æde'.
Avatar billede websam Nybegynder
18. marts 2009 - 20:23 #13
Lukketid ?
Avatar billede Kim Neesgaard Seniormester
19. marts 2009 - 08:09 #14
Ok - du her ret! Vi lukker.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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