Någon som vet varför jag inte kan "återanvända" Jag TROR att om du vill mörda instansen så måste du anropa någon metod i objektet. Jag kan inte säga vad, men jag vet att den varit uppe får några månader sedan. Jag har aldrig använt excel-objectet heller för den delen så... Kan du visa lite exempelkod ang, hur jag dödar dem syns ovan jag har råkat ut precis för samma problem, excel.exe syns i task managern..Excel-objectet i Visual Basic 6
mitt Excel-object i vb,
när jag har använt den första gången
så måste jag stänga ner hela applikationen
för att den ska funka igen,
jag kör:
Set xlBook = Nothing
Set xlApp = Nothing
Set curCell = Nothing
Men den verkar inte frigöras.
Någon som har ngot förslag?Sv: Excel-objectet i Visual Basic 6
Sv: Excel-objectet i Visual Basic 6
hur deklarerar dina objekt,
hur du skapar instanser av dem,
hur du använder/återanvänder dem,
hur du "dödar" dem.
//
JanneSv: Excel-objectet i Visual Basic 6
men jag skapar dem genom att köra
Set xlApp = CreateObject("Excel.Application")
Set xlBook = ....nånting..
jag börjar med
xlBook.Document.Add
och använder
Range("A2").Select
ActiveCell.FormulaR1C1 = "Min text eller formula"
(sitter inte på jobbet, så jag har inte exakt kod, utan skriver
ur minnet)Sv: Excel-objectet i Visual Basic 6
det beror på att om du kör metoder på application objektet och application objektet inte är deklarerat som en excel.applicaton alt object som knyts via getobject till din nuvarande running excel instans, så sparkar windows igång en egen excel process.
du måste ju förstås även köra quit metode på excelobjektet
dvs
sub kalle()
application.activeworkbook.activesheet.range("A1").value="hej"
end sub
...du kan köra alla excels metoder på application objektet eftersom du i ditt projekt har lagt till library referencen för excel 9.0 object library, men eftersom application ej är knutet just till ett excelobjekt kommer windows sparka igång en egen excelprocess
rätt sätt:
sub kalle()
dim myexcel as new excel.application
myexcel.visible=true
myexcel.activeworkbook.activesheet.range("A1").value="hej"
end sub