Hallo Zusammen
ich habe ein Makro in Catia (VBA) mit dem ich Parameter auslese
und in eine Excel Tabelle eintrage.
Die ausgelesenen Werte sind aber nicht richtig sortiert.
Jetzt möchte ich in dem Catia Makro noch eine Range festlegen und eine Sortierung laufen lassen.
Im Catia bekomme ich beim Range("R12:AE46").Select definieren Fehler
"Sub or funktion not defined"
Wenn ich das Makro in Excel schreibe läuft es.
Was muss ich in dem Catia Makro anderst schreiben ?
anbei code:
Sub Main()
Dim i As Integer
Dim prod As Product
Dim m As Integer
' Exel öffnen
Dim objXL
On Error Resume Next
Set objXL = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Err.Clear
Set objXL = CreateObject("Excel.Application")
Set oAWBook = objXL.Workbooks.Add
End If
On Error GoTo 0
objXL.Visible = True
'Berechnung
m = 12 ' Zeile in Exel
i = 0
p = 0
For i = 1 To CATIA.Documents.Count
On Error Resume Next
If (Right(CATIA.Documents.Item(i).Name, 7) = "CATPart") Then
Set prod = CATIA.Documents.Item(i).Product
'Partname kann auch ausgegeben werden
objXL.Cells(m, 2).Value = prod.PartNumber
objXL.Cells(m, "a").Value = prod.Parameters.Item("Position").ValueAsString
---
---
---
'objXL.Cells(m, 11).Value = prod.Parameters.Item("eigener Parameter2").ValueAsString
p = p + 1
If Err.Number <> 0 Then
Err.Clear
End If
m = m + 1
End If
Next
' sorieren und in richtige Stückliste vorne eintragen
Dim Worksheets
Dim ActiveSheet
' ActiveSheet.Activate
'Worksheets(ActiveSheet.Index).Activate
Range("R12:AE46").Select
Selection.Sort Key1:=Range("R12"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
'ActiveWindow.ScrollRow = 13
'ActiveWindow.ScrollRow = 11
'ActiveWindow.ScrollRow = 10
'ActiveWindow.ScrollRow = 8
Range("R12:AE43").Select
Selection.Copy
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("A12").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Range("C21").Select
End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP