Jag provade dethär: I VB IDE måste du gå in under meny Projekt - References.... Om du bara vill skapa en excelfil: Jag provade Andreas exempel och referensen är satt till Excel finns där, men det visas inte. Kolla bland processerna t ex. Min funktion gör det din titel säger: skapa arbetsbok excel Och ! vad är det för vits med det ? .Läs grundfrågan. Problemet är nu löst. Jag hittade en procedur som skaparskapa arbetsbok excel
Tips&Tricks #542 - Automatisera Excel
Och fick dethär felmeddelandet:
Error: 91. Object variable or With block variable not set
Vad kan vara felet? Jag har vb6 winXP excel2000
------------------------------------------------------------
Private m_objExcel As Excel.Application
Private m_objWorkbook As Excel.Workbook
Public Property Get AppExcel() As Excel.Application
' Returns: A handle to the current instance of Excel
Set AppExcel = m_objExcel
End Property
Public Property Get CurWorkbook() As Excel.Workbook
' Returns: A handle to the currently open workbook
Set CurWorkbook = m_objWorkbook
End Property
Public Sub CreateWorkbook( _
strName As String, _
fSave As Boolean)
' Comments : Creates a new workbook and saves it
' Parameters: strName - name for the new workbook
' fSave - True to save, False to leave unsaved
' Returns : Nothing
'
On Error GoTo PROC_ERR
Set m_objWorkbook = m_objExcel.Workbooks.Add
m_objWorkbook.SaveAs FileName:=strName
PROC_EXIT:
Exit Sub
PROC_ERR:
MsgBox "Error: " & Err.Number & ". " & Err.Description, , _
"CreateWorkbook"
Resume PROC_EXIT
End Sub
Private Sub Command1_Click()
Call CreateWorkbook(App.Path & "\minarbetsbok.xls", True)
End SubSv: skapa arbetsbok excel
och där skall du bocka för
Microsoft Excel 8.0 Object Library (Du ha kanske högre version se mitt 8.0)Sv: skapa arbetsbok excel
' Comments : Creates a new workbook and saves it
' Parameters: strName - name for the new workbook
' fSave - True to save, False to leave unsaved
' Returns : Nothing
Public Sub CreateWorkbook(strName As String, fSave As Boolean)
Dim objExcel As Excel.Application
Dim objWorkbook As Excel.Workbook
On Error GoTo PROC_ERR
Set objExcel = New Excel.Application
Set objWorkbook = objExcel.Workbooks.Add()
'Do your stuff
objWorkbook.Close xlSaveChanges, strName
objExcel.Quit
PROC_EXIT:
Exit Sub
PROC_ERR:
MsgBox "Error: " & Err.Number & ". " & Err.Description, , _
"CreateWorkbook"
Resume PROC_EXIT
End Sub
Sv:skapa arbetsbok excel
excel9.0 men någon arbetsbok dyker inte upp. Inte
heller får jag något felmeddelande. Provade med att
släcka felhanteringen( ' on error...). Att proceduren
verkligen körs testade jag med att lägga in Beep.Sv: skapa arbetsbok excel
Du måste lägga till:
objExcel.Visible=TrueSv: skapa arbetsbok excel
Med andra ord istansiera en excel applikations objekt.
Skapa en arbetsbok.
Stäng och spara arbetsboken.
Stäng Excel.
Allt utan att visa excel.Sv:skapa arbetsbok excel
"Godag Yxskaft" kan man säga om ditt svar.Sv: skapa arbetsbok excel
emsamt excelblad, och det räcker för i det jag gör nu.
Tackar //Tor Erik