Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Excel starten

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Excel starten (2731 mal gelesen)
wulfgang
Mitglied



Sehen Sie sich das Profil von wulfgang an!   Senden Sie eine Private Message an wulfgang  Schreiben Sie einen Gästebucheintrag für wulfgang

Beiträge: 64
Registriert: 29.04.2007

CATIA V5 R18

erstellt am: 31. Mrz. 2010 19:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich wollte aus einem Makro in CatVBA auf Excel zurückgreifen.
Code:
Sub CatMain()
Dim oExcel As Application
Dim oWB As Workbook
Dim oWS As Worksheet
' Excel starten
  Set oExcel = CreateObject("Excel.Application")
  oExcel.Visible = True
  ' arbeitsmappe öffnen
  Set oWB = oExcel.Workbooks.Open("e:\temp\punkte.xls")
  ' tabelle holen
  Set oWS = oWB.Worksheets.Item(1)

End Sub


Leider erhalte ich dann schon eine Fehlermeldung wegen dem Workbook:

Zitat:
User-defined type not defined

Muss ich noch irgendeine Binliothek einfügen???

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 31. Mrz. 2010 20:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Servus
Hast du im VBA-Editor die Referenz zu Excel gesetzt? (Tools -> References)

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

wulfgang
Mitglied



Sehen Sie sich das Profil von wulfgang an!   Senden Sie eine Private Message an wulfgang  Schreiben Sie einen Gästebucheintrag für wulfgang

Beiträge: 64
Registriert: 29.04.2007

CATIA V5 R18

erstellt am: 31. Mrz. 2010 20:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Abend,
ja das war es, danke. Weiß auch noch jemand warum ich bei mir
Code:
Dim oExcel As Object
und nicht
Code:
Dim oExcel As Application
verwenden kann?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

V5Playaz
Mitglied
Dipl.-Ing (BA)


Sehen Sie sich das Profil von V5Playaz an!   Senden Sie eine Private Message an V5Playaz  Schreiben Sie einen Gästebucheintrag für V5Playaz

Beiträge: 447
Registriert: 12.07.2005

DELL PRECISION 390
3,25 GB RAM
WIN XP PRO SP2
CATIA V5 R16-19
Delmia V5 R19
VB6, VB2008
Adobe Acrobat 9 Pro Extended

erstellt am: 01. Apr. 2010 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hallo,

bei mir unter VB2008 muss ich das so deklarieren:
dim oExcel as Excel.Application

Dann ist sichergestellt, dass auch auf die Excel-Bibliothek zurück gegriffen wird.

Oder halt alternativ as Object deklarieren.

Grüsse Dominik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 10. Okt. 2013 11:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hi Zusammen,

für mein VBA-Projekt war der genannte Code schon sehr Hilfreich. War auch so frech und habe ihn 1 zu 1 übernommen.
Allerdings habe ich noch ein Problem.

Wenn ich das Makro aus Catia heraus starte, wird Excel gestartet. Es öffnet auch die von mir gewünschte Tabelle. Ich hätte nur gerne, dass die Excel-Tabelle im Vordergrund ist. Im Moment blinkt in der Windowsleiste nur das Excel-Symbol. Hatte gedacht, das geht mit dem Befehl "Excel.Visible = True". Hier habe ich anscheinden Falsch gedacht 

Würd mich über jegliche Hilfe freuen.

Beste Grüße
Ruben

PS: Hier nochmal mein Code:

Sub CATMain()
Dim Excel As Object
Dim WB As Workbook
' Excel starten
Set Excel = CreateObject ("Excel.Application")
Excel.Visible = True
' Arbeitsmappe Öffnen
Set  WB = Excel.Workbooks.Open ("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls")
End Sub

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

erstellt am: 10. Okt. 2013 11:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hey,

ist hier was dabei: http://www.office-loesung.de/ftopic508040_0_0_asc.php

Code:
objExcel.Activate
objExcel.Visible = True
objExcel.WindowState = -4143 'xlNormal

------------------
DIN1055.de  |  Lastannahmen für Anwender

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 10. Okt. 2013 13:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Habs versucht, aber ich bekomm immer diese Fehlermeldung:

"Das Objekt unterstützt diese Eigenschaft oder Methode nicht.: 'Excel.Activate'

Grüße

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

imation1999
Mitglied
dipl.-ing. Maschinenbau


Sehen Sie sich das Profil von imation1999 an!   Senden Sie eine Private Message an imation1999  Schreiben Sie einen Gästebucheintrag für imation1999

Beiträge: 276
Registriert: 02.08.2011

Dell Precision T3500
Intel® Xeon® Quad Core
NVIDIA Quadro® 5000
Win7 x64 Ultimate
CATIA V5 R20 SP2

erstellt am: 10. Okt. 2013 13:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hallo,

Du kannst so auch versuchen:

Code:
Sub CATMain()

Dim Excel As Object
Dim WB As Workbook
' Excel starten
Set Excel = CreateObject("Excel.Application")
Excel.Visible = True
' Arbeitsmappe Öffnen
Set WB = oExcel.Workbooks.Open("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls")

Excel.WindowState = xlMaximized

End Sub


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Harmening
Ehrenmitglied V.I.P. h.c.
Arbeiter ツ



Sehen Sie sich das Profil von Thomas Harmening an!   Senden Sie eine Private Message an Thomas Harmening  Schreiben Sie einen Gästebucheintrag für Thomas Harmening

Beiträge: 2897
Registriert: 06.07.2001

NX 10
Win 7

erstellt am: 10. Okt. 2013 20:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

aus Catia heraus

Code:
Private Declare Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)

Sub CATMain()

Dim oExcel As Object
Dim WB As workbook
' Excel starten
Set oExcel = CreateObject("Excel.Application")
' Arbeitsmappe Öffnen
Set WB = oExcel.workbooks.Open("C:\tmp\test.xlsx")
oExcel.Application.Visible = True 'excel sichtbar

Sleep 1000
oExcel.Application.Visible = False 'excel unsichtbar
CATIA.Application.Visible = True 'Catia sichtbar
Sleep 1000
oExcel.Application.Visible = True'excel sichtbar
  CATIA.Application.Visible = False 'Catia unsichtbar
Sleep 1000
oExcel.Application.Visible = False  'excel unsichtbar
CATIA.Application.Visible = True 'Catia sichtbar
Sleep 1000
oExcel.Application.Visible = True 'excel sichtbar

End Sub


kursiv wird nicht wirklich benötigt 

@imation1999 Set WB = oExcel.Workbooks.Open("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls") das o ist hier zuviel

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 11. Okt. 2013 13:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hi,

erstmal vielen Dank für die Hilfe!!!

Es funktioniert fast so wie ich es mir vorstelle. Hab noch ein Problem, das ich mir selbst nicht erklären kann. Ich hab den folgenden Code:

Sub CATMain()

Dim oExcel As Object
Dim WB As Workbook

' Excel starten
Set oExcel = CreateObject("Excel.Application")
oExcel.Visible = True

' Arbeitsmappe Öffnen
Set WB = Excel.Workbooks.Open _
("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls")
Excel.Application.Visible = True
oExcel.WindowState = xlMaximized

End Sub


Wenn ich Catia starte und das Makro zum ERSTEN mal aufrufe, dann blinkt wie gehabt nur das Excel-Symbol in der Windowsleiste. Wenn ich allerdings den Code wieder aufrufe (Excel-Datei ist wieder geschlossen) dann ploppt das Excel-Fenster auf (So wie ich es gerne hätte).
Ich schätze ich muss noch irgendetwas irgendwo aktivieren/deklarieren damit dieses Problem auch weg ist.

Würde mich freuen, wenn Ihr mir helfen könnten dieses Problem zu lösen.

Grüße
Ruben

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

imation1999
Mitglied
dipl.-ing. Maschinenbau


Sehen Sie sich das Profil von imation1999 an!   Senden Sie eine Private Message an imation1999  Schreiben Sie einen Gästebucheintrag für imation1999

Beiträge: 276
Registriert: 02.08.2011

Dell Precision T3500
Intel® Xeon® Quad Core
NVIDIA Quadro® 5000
Win7 x64 Ultimate
CATIA V5 R20 SP2

erstellt am: 11. Okt. 2013 13:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hallo,

versuch mal so:

Code:
Private Declare Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)


Sub CATMain()

Dim oExcel As Object
Dim WB As Workbook
' Excel starten
Set oExcel = CreateObject("Excel.Application")
' Arbeitsmappe Öffnen
Set WB = oExcel.Workbooks.Open("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls")

Sleep 1000

oExcel.Application.Visible = True
oExcel.WindowState = xlMaximized

End Sub


@Thomas Harmening: Du hattest völlig recht, danke für die Korrekur!

----------------
EDIT: Was für ein Betriebssystem nutzt Du?

[Diese Nachricht wurde von imation1999 am 11. Okt. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 11. Okt. 2013 14:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Leider funktioniert auch dies nicht       

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 11. Okt. 2013 14:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Ich Arbeite in Windows 7 mit Catia V5 R19 und Excel 2010.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Harmening
Ehrenmitglied V.I.P. h.c.
Arbeiter ツ



Sehen Sie sich das Profil von Thomas Harmening an!   Senden Sie eine Private Message an Thomas Harmening  Schreiben Sie einen Gästebucheintrag für Thomas Harmening

Beiträge: 2897
Registriert: 06.07.2001

NX 10
Win 7

erstellt am: 11. Okt. 2013 17:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Rubio18:
Hi,

erstmal vielen Dank für die Hilfe!!!

Es funktioniert fast so wie ich es mir vorstelle. Hab noch ein Problem, das ich mir selbst nicht erklären kann. Ich hab den folgenden Code:

Code:
Sub CATMain()

Dim oExcel As Object
Dim WB As Workbook

' Excel starten
Set oExcel = CreateObject("Excel.Application")
oExcel.Visible = True

' Arbeitsmappe Öffnen
Set WB = Excel.Workbooks.Open _
("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls")
Excel.Application.Visible = True
oExcel.WindowState = xlMaximized

End Sub



Wenn ich Catia starte und das Makro zum ERSTEN mal aufrufe, dann blinkt wie gehabt nur das Excel-Symbol in der Windowsleiste. Wenn ich allerdings den Code wieder aufrufe (Excel-Datei ist wieder geschlossen) dann ploppt das Excel-Fenster auf (So wie ich es gerne hätte).
Ich schätze ich muss noch irgendetwas irgendwo aktivieren/deklarieren damit dieses Problem auch weg ist.

Würde mich freuen, wenn Ihr mir helfen könnten dieses Problem zu lösen.

Grüße
Ruben


betrachte deinen Code - oExcel oder Excel
kann sein dass das am Verhalten selber nix ändert,
aber wenn was nicht so funktioniert wie es funktionieren sollte,
sollte erstmal der Code in sich sauber sein ;)

BTW WIN7, Caia R19 und XL 2010

versuche mal untenstehenden code

Code:
Sub CATMain()

Dim oExcel As Object
Dim WB As Workbook

Set oExcel = CreateObject("Excel.Application")       ' Excel starten

Set WB = oExcel.Workbooks.Open ("L:\Modelle_CV5\Konstruktionstabelle\DESIGNTABLE_All.xls") ' Arbeitsmappe Öffnen
oExcel.Application.Visible = True
'oExcel.WindowState = xlMaximized 'Vollbild

End Sub


[Diese Nachricht wurde von Thomas Harmening am 11. Okt. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rubio18
Mitglied
Ingenieur


Sehen Sie sich das Profil von Rubio18 an!   Senden Sie eine Private Message an Rubio18  Schreiben Sie einen Gästebucheintrag für Rubio18

Beiträge: 19
Registriert: 10.10.2013

Catia V5 R19SP09
Excel 2010

erstellt am: 14. Okt. 2013 08:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hi Thomas,

danke für deine Antwort.
Hab den Code mal eindeutiger geschrieben und auch deine Version probiert. Funktioniert alles wie vorher. Also immer noch der selbe Fehler.

Was ich nicht verstehe, warum funktioniert das Makro beim Ersten Öffnungsvorgang nicht, dafür aber beim zweiten.???

Es ist doch der selbe Code...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Beverly
Mitglied
Dipl.-Geologe (Rentner)


Sehen Sie sich das Profil von Beverly an!   Senden Sie eine Private Message an Berverly  Schreiben Sie einen Gästebucheintrag für Berverly

Beiträge: 394
Registriert: 11.08.2007

erstellt am: 19. Okt. 2013 12:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für wulfgang 10 Unities + Antwort hilfreich

Hi Ruben,

setze mal vor End Sub noch diese Zeile:

Code:
AppActivate oExcel

Vielleicht hilft das ja weiter.

------------------
Bis später,
Karin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz