Hejsan! Spånar lite utan kunna exakta fakta. Du har ett .doc object som heter något Tack!!! Ska prova det och återkommer med resultatet sen, tack igen!! 'wd3Doc.PrintPreview' öppnar förhandsgranskning Tack snälla ni för all hjälp! Åhhhh! Finns det ingen som kan hjälpa mig, snart gråter jag :( Jag får det inte att fungera. Jag vet inte om du blir hjälpt av detta men... Öh? Tack så mycket!Utskriftsproblem!
Jag har ett litet problem och skulle bli jätteglad om någon vill hjälpa mig med.
I mitt program som det ser ut nu har jag en "Skriv ut" - knapp.
Jag har gjort några malldokument i Word med formulärsfält. När man klickar på "Skriv ut" kollar programmet alla värden och för sedan över dessa till de olika fälten i Word-dokumenten och sedan öppnas Word förhandsgranskning där man kan se resultatet.
Direkt efter det öppnas Skriv ut fönstret med alla skrivaregenskaper.
Allt funkar bra nu så länge jag låter Word visa sin förhandsgranskning men kravet är nu att endast Skriv ut fönstret med skrivaregenskaperna ska visas och att användaren bara ska kunna välja egenskaper och sedan skriva ut utan att Word öppnas och visas.
Jag har provat att ta bort den rad (wd3Doc.PrintPreview) som gör att Word öppnas och utskriften funkar bra första gången, men om jag försöker att skriva ut igen så ligger det något öppet eller i minnet och svaret blir bara att filen är låst för redigering ända tills jag startar om datorn.
Frågan är alltså, går det i kod att stänga ner den använda dokumentmallen efter att utskriften har blivit gjord?
Jag blir knäpp på det här snart känns det som, suck!
Jättetacksam för hjälp (vet inte om jag förklarat så nån förstår, annars får ni fråga mig, hehe)
Mvh
SivanSv: Utskriftsproblem!
Som avslutning på din kod efter allt är klart skall du sätta
Set objektet = Nothing.Sv: Utskriftsproblem!
SivanSv: Utskriftsproblem!
'wd3Doc.Printout' skriver ut direkt
sen måste de stänga programet(word) med
object.Activedocument.Close SaveChanges:=False stänger utan att spara
object.quit stänger word
set object nothing frigör minneSv: Utskriftsproblem!
Jag har nu försökt att lägga till de kodrader ni gett mig men det funkar ändå inte. Word blir upptaget i bakgrunden och i utforskaren kan man se att filerna ligger öppna.
Raden 'wd3Doc.PrintPreview' får inte finnas med i koden då inget ska synas utan utskriften ska bara börja när man klickat på Skriv ut. Om det nu går utan den? hehe!
Jag kopierar in en bit av koden här så att ni kanske kan hjälpa mig med vart jag ska avsluta Word någonstans:
--------------------------------------
Set wd3 = New Word.Application
Set wd3Doc = wd3.Documents.Add(App.Path & "\" & "DetaljOrdförståelse.doc")
With wd3Doc
.FormFields("namn").Range = namn2
.FormFields("namn1").Range = namn2
.FormFields("namn2").Range = namn2
.FormFields("namn3").Range = namn2
.FormFields("Datum1").Range = Datum
.FormFields("Datum2").Range = Datum
.FormFields("Datum3").Range = Datum
.FormFields("Datum4").Range = Datum
For i = 0 To 89
.FormFields("svar" & i).Range = svarenOrd(i)
Next i
End With
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
CommonDialog1.ShowPrinter
BeginPage = CommonDialog1.FromPage
EndPage = CommonDialog1.ToPage
NumCopies = CommonDialog1.Copies
Orientation = CommonDialog1.Orientation
For i = 1 To NumCopies
If chOrd2.Value = 1 Then
wd3Doc.PrintOut True
End If
If i < NumCopies Then Printer.NewPage
Next
Printer.EndDoc
Exit Sub
------------------------------------------
Hoppas det går att lösa på nåt sätt, och tack igen!
Betyder jättemycket att kunna få hjälp av er snälla!
SivanSv: Utskriftsproblem!
Om jag inte visar Word förhandskgranskning (som det ska vara i programmet) med wd3Doc.PrintPreview så står det antingen bara "Printing" eller "Spooling" under Skrivaren efter jag har valt Skriv ut, men den skriver inte ut något.
Om jag istället visar Word förhandsgranskning med raden wd3Doc.PrintPreview så kommer ett meddelande från Word som säger att "Utskrift pågår, om du avslutar Word så avbryts utskriften" (nånting sånt), hmm? Varför står det "Spooling" nu helt plötsligt? Har det ju aldrig gjort förut, och vad menas med det?
Vet inte vad jag gör för fel nu, snälla hjälp om ni kan!!
SivanSv: Utskriftsproblem!
<code>
Dim Word As Word.Application
Dim doc As Word.Document
Set Word = CreateObject("Word.Application")
If Word Is Nothing Then
eInfo.Caption = "Word är inte installerad"
snacka.Speak "Oh no!"
Else
Set doc = Word.Documents.Add(App.path & "\Report\Liggande1.dot")
DoEvents
While Not Rst.EOF
With Word.Selection
.TypeText Rst.Fields("ArrNo").Value & vbTab
.TypeText Rst.Fields("SångTitel").Value & vbTab
.TypeText Rst.Fields("Författare").Value & vbTab
.TypeText Rst.Fields("Författare2").Value & vbNullString & vbTab
.TypeText Rst.Fields("Författare3").Value & vbNullString & vbTab
.TypeText Rst.Fields("Kategori").Value & vbTab
.TypeText Rst.Fields("Album").Value & vbTab
.TypeText Rst.Fields("Stim").Value & vbTab
If Not IsNull(Rst.Fields("Verknr").Value) Then
.TypeText Rst.Fields("Verknr").Value
End If
.TypeText (vbCrLf)
.Font.Name = "Arial"
.Font.Size = "8"
End With
Rst.MoveNext
Wend
Word.Activate
Rst.Close
Set Rst = Nothing
Set doc = Nothing
Set Rst = Nothing
</code>
Detta fungerar bra för mig, är lite undranden varför har du commondialog, när man kan göra det så här?Sv: Utskriftsproblem!
Skulle detta skriva ut dokumentet; det ser bara ut som om du skriver en sida i word.
Sen bör man inte använda while-wend-satser; helt onödigt. Använd Do While-Loop istället.Sv: Utskriftsproblem!
Jag ska gå igenom ditt exempel och se om jag kan hitta lösningen :)
CommonDialog använder jag för att skriva ut dokumentet, går det på
annat sätt mener du? Jag är inte så duktigt på VB så jag blir rätt frågvis
och kan nog göra en del som andra tycker är konstigt i mina koder, hehe!
Men man lär sig av misstag och med tiden antar jag!
Tack
Ska kolla koden nu
Mvh
Sivan