Hi Simon,
Hm also du hattest den gleichen Code wie ich (also mit dem
ganzen Code vorher, den ich hier gepostet habe?)?
Nö, aber der existiert nicht mehr.
Nachfolgend ist Code, der durchläuft, allerdings nur mit GetObject, wenn ich CreateObject nehme kann ich select oder Activate bentzen wie ich will, er „hüpft“ nicht in die 2te Excelinstanz in das Blatt Diagramme, was ich an dem Msgbox gut sehen kann.
Warum das Gleiche mal Diagramm 1, mal Chart 1 heißt weiß ich nicht.
Und da mit VBS starten willst, d.h. beim Start existiert noch gar kein Excel, k.A. was du dann machen mußt.
Gruß
Reinhard
Sub Erstellen\_Click()
'öffnen
Dim objExcel As Object
'Set objExcel = CreateObject("Excel.Application")
Set objExcel = GetObject(, "Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Open "C:/Diagramme.xls"
With objExcel.Worksheets("Diagramme")
.Activate
.Select
.Range("A1").Select
'MsgBox ActiveSheet.Name
MsgBox ActiveWorkbook.Name
'For Each C In ActiveSheet.Shapes
'MsgBox C.Name
'Next C
.ChartObjects("Diagramm 1").Activate
ActiveChart.ChartArea.Select
ActiveChart.SetSourceData Source:=Sheets("Daten").Range("A1:B8"), PlotBy:=xlColumns
' .Shapes("Chart 1").ChartArea.Select
' ActiveChart.SetSourceData Source:=objExcel.Sheets("Daten").Range("A3:A6,C3:C6"), PlotBy:=xlColumns
'excel schließen
End With
objExcel.ActiveWorkbook.Close SAVECHANGES:=True
'objExcel.Quit
End Sub
Was mir einfällt, laß mal das Visible=false weg, das führt nur
dazu daß man nach dem ersten Versuch die Datei nur noch
schreibgeschüützt öffnen kann, oder man schießt die
versteckten Excel-Instanzen mit dem Taskmanager ab.
Mhm ja danke, das habe ich so langsam auch bemerkt^^
Und, hat mit dem Problem nichts zu tun, aber benutze bitte
keine Vba bekannten Namen als Variablennamen, also bitte Excel
in objExcel o.ä. abändern.
Ja werde ich machen, habe den Code auch nur von woanders
Copiert:smile:
Hm ich verzweifel so langsam…
Völlig normale Entwicklung bei Umgang mit MS-Produkten
))
xD, ja die wollen wohl noch en bissel an neuzukaufenden
Tastaturen verdienen!
Vielen Dank auf jeden Fall schonmal
Gruß Simon