Autor
|
Thema: Excel / Autoformen / Textfeld (1851 mal gelesen)
|
WillyWacker Mitglied
Beiträge: 7 Registriert: 16.07.2012 Windows 7 Catia V5 R19
|
erstellt am: 09. Okt. 2013 13:36 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich versuche vergeblich aus dem Catia im Excel Textfelder zu erstellen. Das füllen der einzelnen Zellen hat gut geklappt, jetzt möchte ich auf der Seite / Blatt noch einzelne Textfelder erstellen, erhalte aber immer die Meldung " Run-Time Error 1004 der angegebene Wert ist außerhalb des zulässigen Bereiches " Wo liegt der Fehler ? Was bedeutet die Meldung genau Könnte mir jemand weiterhelfen. Willy
------------------ Willi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 09. Okt. 2013 14:54 <-- editieren / zitieren --> Unities abgeben: Nur für WillyWacker
Uhhhhh, Du willst deine Problemstellung aber wirklich mysteriös halten und uns mit Informationen bloß nicht überversorgen. :-) Wie sieht Dein Code aus und welche Systeme verwendest Du? Ich würde auch darauf wetten, dass wenn Du die Google-Suche oder ein Excel-Forum bemüht hättest die Lösung sicher schon da wäre. :-) Ich behaupte, aus der Kalten: Ein Indexzähler von Dir ist zu hoch/niedrig oder Du hast nen Speicherüberlauf. Vielleicht fängst Du mit 0 an obwohl das Array mit 1 beginnt. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WillyWacker Mitglied
Beiträge: 7 Registriert: 16.07.2012 Windows 7 Catia V5 R19
|
erstellt am: 09. Okt. 2013 15:33 <-- editieren / zitieren --> Unities abgeben:
Hallo Henry, mein Problem wollte ich nicht mysteriös halten. ;-) Ich bin mit Catia V5 R19 auf Windows7 und Excel2010 unterwegs. Meine VBA-Erfahrungen sind bislang nicht so umfangreich. Hier ein Auszug aus dem Code ----------------------------- fpath = CATIA.FileSelectionBox("Verzeichnis wählen", "*.xlsx", CatFileSelectionModeOpen) '*** Excel laden On Error Resume Next Set AppExcelWorld = GetObject(, "Excel.Application") If Err.Number <> 0 Then Set AppExcelWorld = CreateObject("Excel.Application") End If Err.Clear On Error GoTo 0 Set oDoc = AppExcelWorld.Workbooks.Open(fpath) '*** Anaylse des aktiven Blatt For x = 1 To AppExcelWorld.Sheets.Count If InStr(AppExcelWorld.Sheets.Item(x).Name, "Blatt 2") <> 0 Then Set oWorkssheet = AppExcelWorld.Sheets.Item(x) End If Next x Stop 'Auszug aus der Erstellung einer Wolke zum Beispiel. 'Im Excel läuft der Code einwandfrei. Dim shpCloud As Shape Application.ScreenUpdating = False ' Wolkenförmige Legende einfügen Set shpCloud = ActiveSheet.Shapes.AddShape _ (Type:=msoShapeCloudCallout, _ Left:=200, Top:=120, _ Width:=220, Height:=170) With shpCloud With .TextFrame ' Den Text einfügen und formatieren With .Characters .Text = " Das ist ein Test" With .Font .Size = 40 .Bold = True .ColorIndex = 25 End With End With ' Textausrichtung: Horizontal und vertikal zentriert .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With ' Linienformatierungen With .Line .Weight = 2 .ForeColor.RGB = RGB(0, 0, 0) End With ' Füllformatierungen With .Fill .Transparency = 0.5 .ForeColor.SchemeColor = 52 .BackColor.SchemeColor = 15 .TwoColorGradient msoGradientFromCenter, 2 End With ' Einen Schatteneffekt einfügen .Shadow.Type = msoShadow6 End With Set shpCloud = Nothing Application.ScreenUpdating = False End Sub Gruss Willy
------------------ Willi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 09. Okt. 2013 16:01 <-- editieren / zitieren --> Unities abgeben: Nur für WillyWacker
In welcher Zeile ist der Fehler? Edit: Ab Application.ScreenUpdating = False sieht der Code ungünstig aus. Dort scheinst Du davon auszugehen Dich in einer EXCEL-Applikation zu befinden, Du bist aber im CATIA. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing [Diese Nachricht wurde von HoBLila am 09. Okt. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WillyWacker Mitglied
Beiträge: 7 Registriert: 16.07.2012 Windows 7 Catia V5 R19
|
erstellt am: 09. Okt. 2013 16:07 <-- editieren / zitieren --> Unities abgeben:
Hallo Henry das Frage ich mich auch. Ich kann mir die Meldung nicht erklären. Oder ist es doch ein Speicherproblem ? Ich muss morgen die Zuordnung des Shape überprüfen. Erstmals vielen Dank ------------------ Willi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 09. Okt. 2013 16:18 <-- editieren / zitieren --> Unities abgeben: Nur für WillyWacker
Springt der Fehler nicht gleich in die Zeile? Falls nicht geh das Makro im Einzelschritt durch bis der Fehler auftritt, dann weißt Du es genauso. Warum ermittelst Du oWorkssheet, wenn Du es später sowieso nicht verwenden magst? :-) Ändere mal ActiveSheet in oWorkssheet ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WillyWacker Mitglied
Beiträge: 7 Registriert: 16.07.2012 Windows 7 Catia V5 R19
|
erstellt am: 14. Okt. 2013 11:56 <-- editieren / zitieren --> Unities abgeben:
Hallo Henry, habe ActiveSheet durch oWorksheet getauscht den Code mittels Einzelschritte durchgegangen. Ich bekomme einfach nicht hin, ein Shape zur erzeugen. In Locals ist das Feld "Value" weiterhin leer. / Nothing. Habe meine Referenzen im VBA nachgesehen, vielleicht eine Lib nicht gezogen! Kann mir den Fehler nicht erklären, warum das Shape sich nicht erzeugt. Es ist die Lib Micosoft Excel 14,0 ObjektLibary angezogen, werden für die Autoformen eine weitere Lib benötigt ? Wo liegt der Hund begraben ? Gruss Willy ------------------ Willi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 14. Okt. 2013 15:28 <-- editieren / zitieren --> Unities abgeben: Nur für WillyWacker
Was macht Stop eigentlich? Sieht unnötig aus. :-) Du bist also den kompletten Code im Einzelschritt durchgegangen und es trat kein Fehler auf? Micosoft Excel 14.0 ist ausreichend als Referenz, da ist alles, was Du benötigst, drin. Welches Feld Value meinst Du? Entscheidend ist doch ob in shpCloud und oWorkssheet ein Objekt landet. Application.ScreenUpdating = False müsste eigentlich bereits einen Fehler werfen. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WillyWacker Mitglied
Beiträge: 7 Registriert: 16.07.2012 Windows 7 Catia V5 R19
|
erstellt am: 15. Okt. 2013 08:10 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen Henry das Stop nutze ich um das Programm an dieser Stelle zu stoppen. Kann auch mittels einer Makrierung der Zeile erfolgen.( Roter Balken ) ;-) Das Feld "Value" meinte ich im VBA Editor. Dort unter Locals werden mir die Elemente z.B. shpCloud und dessen Inhalt angezeigt. Meinen Fehler habe ich gefunden bzw. so läuft es jetzt. Folgende Änderung habe ich vorgenommen. Dim shpCloud as Excel.Shape ( vorher... as shape ) und in der Zeile Set shpCloud = ActiveSheet.Shapes.AddShape (Type:=msoShapeCloudCallout,Left:=200, Top:=120,Width:=220,Height:=170) in Set shpCloud = oWorksheet.Shapes.AddShape(msoShapeCloudCallout,200,120,220,170) geändert. Gruss Willy
------------------ Willi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |