Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Pelle, hjälp en stackars sate!

Postades av 2001-06-19 13:32:00 - Daniel Glantz, i forum asp - allmänt, Tråden har 15 Kommentarer och lästs av 1106 personer

Okej, jag har postat om detta problem tidigare men det är liksom inte nån som verkar ha en hint om detta. Problemet är att jag försöker få en .asp sida att konvertera ett .xls dokument till .html. Men det bara strular och jag har nog försökt komma tillrätta med problemet i 2 månader nu! Att konvertera .doc till .html med samma princip fungerar perfekt, men för att få mitt intranät till att bli lite mer komplett vill jag gärna att man kan konvertera excel också. SKicka med den väsentliga koden:


Dim objExcel
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = FALSE
objExcel.WorkBooks.Open(strExcelDoc) 'path, filename and extension

'check errors
If Err.Number <> 0 Then
ExcelToHTML = Err.Description
Else


objExcel.ActiveWorkBook.SaveAs _
Filename = strHTMLDoc ,_
FileFormat = xlHTML ,_
Password = "" ,_
WriteResPassword = "" ,_
ReadOnlyRecommended = False ,_
CreateBackup = False ,_
AccessMod = xlShared ,_
ConflictResolution = xlUserResolution ,_
AddToMru = False ,_
TextCodePage = False ,_
TextVisualLayout = False


Denna kod ger felmeddelandet:
Åtgärd misslyckades. FALSE.xls är skrivskyddad.

Jag har inga fel i sökvägar och strängar och såna saker för det har jag kontrollerat nu i 2 månader. Använder Office2000. Porgrammet startar i bakgrunden men sedan blir något fel.

Jag skulle bli oerhört tacksam om det finns någon lösning på detta problem.

Daniel G



Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-19 13:49:00 - Pelle Johansson

Ditt fel verkar bero på att användaren GUEST inte får skriva till eller över en annan fil. Se till att i filhanteraren markera denna fil och ge usern guest/everyone den fulla rättigheter på filen.

Du skulle även kunna skapa en underkatalog där alla har fulla rättigheter som du använder. Tänk på att när du surfar till sidan så är du anonym och därför måste just guest få dessa rättigheter.

Se även till att Excel tillåts göra en overwrite av befintlig fil, det borde finnas någon parameter för det också.

Lycka till
/Pelle


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 08:07:00 - Daniel Glantz

Jo, jag får tyvärr säga att det hjälper inte. Just parametern om att Excel får skriva över befintlig vet jag inte hur jag ska komma åt men allt annat har jag provat. Det som är märkligt är att min Word konverterare använder samma mapp men den har aldrig krånglat på detta viset! Alla uppgifter i koden stämmer ju överens med vad Microsoft har skrivit i MSDN Library. Jag har även gjort ett makro i Excel och den ger mig samma kod som den jag har angivit ovan. Just nu kör jag dock på Personal Web Server och inte IIS på min testdator med NT4 om det kan spela någon roll.


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 08:23:00 - Pelle Johansson

Testa att köra samma program i VB ! Fungerar det i VB så handlar det om rättigheter, annars är det koden eller din konverterare som strular.

/Pelle


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 08:34:00 - Magnus Gladh

Har du kollat så du inte har någon excel-applikation och kör i bakgrunden..

Jag har gjort några komponenter som läser/skriver till ett excel-blad, om man inte stänger ner sitt excel-object ordentligt så ligger det kvar en excel-applikation i bakgrunden och kör, om den råkar köra samma fil som du vill skriva till så får du inte det, du får läsa från den men inte skriva till den, alltså endast en användare(process) av excel får vara igång samtidigt...

Kolla i din task-manager (finns det en sådan till win98) om du har någon excel.process igång, om du är osäker starta om din dator och testa att köra din kod det första du gör, fungerar den första gången men sedan inte mer, har du hittat felet.

- Magnus


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 09:10:00 - Daniel Glantz

Ja, jag lade över allt på den riktiga servern nu. Första gången gick det bra sa den. Andra gången blev det fel igen och mycket riktigt ligger Excel kvar i bakgrunden. Provade med en annan fil men då blir det ändå fel, nu blir det nått skrivdelningsfel så att man måste starta om datorn varenda gång man haft fel. Men även när jag startat om datorn kan jag inte konvertera de filer jag försökt med innan utan direkt blir det fel och en ny Excel läggs i bakgunden för varje försök och man kan inte öppna filerna igen!!

Detta är koden för att Excel ska sluta köras:


objExcel.ActiveWorkBook.Close
objExcel.Quit
Set objExcel = Nothing


Borde väl inte vara nått problem där, tycker jag?


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 10:13:00 - Daniel Glantz

Det som är märkligt är att felmeddelandet hänvisar till en fil som inte finns:

Åtgärd misslyckades. FALSE.xls är skrivskyddad

Jag har ingen fil som heter FALSE.xls!!


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 12:16:00 - Simon Ström

kan man inte bara söka på den

och om man hittar den kan man ta bort skriv skyddet

eller?????

/Simon


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 13:02:00 - Daniel Glantz

Jo, jag har hittat filen FALSE.xls. Den lägger sig varje gång jag försöker konvertera i NT:s Profile katalog. Men den filen har inget med de filer jag väljar att göra den bara skapas helt utan anledning!


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 14:56:00 - Pelle Johansson

Då skapar säkert Excel en tempfil i någon katalog - därför måste du även se till att inet_user har skrivrättigheter där :-)

(ex windows\temp)


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 15:46:00 - Magnus Gladh

objExcel.ActiveWorkBook.Close
objExcel.Quit
Set objExcel = Nothing

Kommer aldrig att köras om du får något fel... det betyder om du får något fel i din kod och programets avbruts så körs inte de kommandona och du måste manuellt avsluta processorna (klart jobbigt)

Det borde dock gå att lösa med on error kommandot...

- magnus


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 15:48:00 - Magnus Gladh

Tänk på att excel är ett envändars verktyg som om file FALSE.xls skapas av någon excel-applikation, behöver inte vara din egen, och ligger kvar som en process kan du får problem när du försöker köra dina filer!!!

- magnus


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-20 16:00:00 - Daniel Glantz

Jag har gjort det nu. Det är så här att jag får inte upp något felmeddelande längre utan nu är "konvertering genomförd" men det är den inte! Det enda som händer är att filen FALSE.xls skapas i profiles mappen och ingen konvertering av den urpspungliga filen har gjorts! Förstår inte riktigt varför filen FALSE.xls skapas den har inget med något att göra.
Så här ser hela koden ut:


strExcelDoc = ""& strMyFolder &"\dokument\"&Request.QueryString("Path")&""
strHTMLDoc = strExcelDoc
strHTMLDoc = Replace(strHTMLDoc,".xls",".html",1)

Function ExcelToHTML(strExcelDoc, strHTMLDoc)
On Error Resume Next


Dim objExcel
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = FALSE
objExcel.WorkBooks.Open(strExcelDoc)


'check errors
If Err.Number <> 0 Then
ExcelToHTML = Err.Description
Else

objExcel.ActiveWorkBook.SaveAs _
Filename = "& strHTMLDoc &" ,_
FileFormat = xlHTML ,_
Password = "" ,_
WriteResPassword = "" ,_
ReadOnlyRecommended = False ,_
CreateBackup = False ,_
AccessMod = ExclusiveAccess ,_
ConflictResolution = xlOtherSessionChanges ,_
AddToMru = False ,_
TextCodePage = False ,_
TextVisualLayout = False


'check errors (this should be another routine)
If Err.Number <> 0 Then
Response.Write Err.Description & "<br>"
ExcelToHTML = Err.Description
Else
ExcelToHTML = "Konvertering genomförd"

'Close/Kill
objExcel.ActiveWorkBook.Close
objExcel.Quit
Set objExcel = Nothing


'check errors (this should be another routine)
If Err.Number <> 0 Then
ExcelToHTML = Err.Description
Else
ExcelToHTML = "Konvertering genomförd"

End If 'closing/killing Word Object Error Handling
End If 'creating active doc and converting Error Handling
End If 'opening Word Object Error Handling

End Function


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-21 09:20:00 - Daniel Sävhammar

Var har du fått följande kod ifrån?

objExcel.ActiveWorkBook.SaveAs _
Filename = "& strHTMLDoc &" ,_
FileFormat = xlHTML ,_
Password = "" ,_
WriteResPassword = "" ,_
ReadOnlyRecommended = False ,_
CreateBackup = False ,_
AccessMod = ExclusiveAccess ,_
ConflictResolution = xlOtherSessionChanges ,_
AddToMru = False ,_
TextCodePage = False ,_
TextVisualLayout = False

Testa att byta ut den mot:
objExcel.ActiveWorkBook.SaveAs strHTMLDoc, 44

(44 är värdet på konstanten xlHTML)


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-21 11:38:00 - Daniel Glantz

Tack så väldigt mycket, det fungerar nu! Dock med et förbehåll, första gången man konverterar fungerar allt perfekt, andra gången man försöker konvertera samma fil blir det ett skrivdelningsfel och man får starta om datorn. Finns det någon parameter man kan lägga till för att Excel ska kunna skriva över filer?

Annars den gamla koden har jag plockat ihop från MSDN om både FileFormat och SaveAs Method, men även om man skapar ett makro i Excel och kollar VB koden får man ut den kod jag hade från början.

Var kan man få reda på konstantvärdena?


Svara

Sv: Pelle, hjälp en stackars sate!

Postades av 2001-06-21 13:48:00 - Daniel Sävhammar

För att ta reda på konstanternas värde kan du skapa ett makro i Excel typ:

Cells(1, 1).Value = xlHtml

Alla filformatskonstanterna hittar du på:
http://msdn.microsoft.com/library/officedev/off2000/xlproFileFormat.htm

För att Excel ska skriva över filer lägger du till nedanstående rad innan du sparar (SaveAs):

objExcel.DisplayAlerts = False


Svara

Nyligen

  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 846
27 961
271 763
2 421
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies