Danke für die Unterstützung!
Jetzt sieht das CatVBA-Makro so aus und funktioniert:
Sub Z31_Zylinderschraube_mIS_EN_4762_KTab()
Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As Part
Set part1 = partDocument1.Part
Dim parameters1 As Parameters
Set parameters1 = part1.Parameters
Dim Bezeichnung As Parameter
Set Bezeichnung = parameters1.Item("Bezeichnung")
Dim d_dia As Parameter
Set d_dia = parameters1.Item("d_dia")
Dim l_nom As Parameter
Set l_nom = parameters1.Item("l_nom")
Dim k_head_depth_max As Parameter
Set k_head_depth_max = parameters1.Item("k_head_depth_max")
Dim s_nom As Parameter
Set s_nom = parameters1.Item("s_nom")
Dim r_min As Parameter
Set r_min = parameters1.Item("r_min")
Dim ds_max As Parameter
Set ds_max = parameters1.Item("ds_max")
Dim e As Parameter
Set e = parameters1.Item("e")
Dim t_min As Parameter
Set t_min = parameters1.Item("t_min")
Dim p_pitch As Parameter
Set p_pitch = parameters1.Item("p_pitch")
Dim Threading As Parameter
Set Threading = parameters1.Item("Threading")
Dim dk_max As Parameter
Set dk_max = parameters1.Item("dk_max")
Dim M As Parameter
Set M = parameters1.Item("M")
Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Open("Z:\Konstruktionstabellen\Z31, Zylinderschraube mit Innensechskant ISO 4762\Z31.xlsx")
Set oSheet = oBook.Worksheets(1)
oExcel.Visible = True
Dim Bezugszeile As Integer
Dim BasicCell As Object
Set BasicCell = oSheet.Cells
Dim rngZelle As Object
Set rngZelle = oExcel.Application.InputBox("Wähle bitte die Zellen.", "Zellen wählen", Type:=8)
Bezugszeile = rngZelle(1).Row
BasicCell(Bezugszeile, 1).Activate
Bezeichnung.Value = BasicCell(Bezugszeile, 1).Value
M.Value = BasicCell(Bezugszeile, 2)
d_dia.Value = BasicCell(Bezugszeile, 3)
l_nom.Value = BasicCell(Bezugszeile, 4)
k_head_depth_max.Value = BasicCell(Bezugszeile, 5)
s_nom.Value = BasicCell(Bezugszeile, 6)
r_min.Value = BasicCell(Bezugszeile, 7)
ds_max.Value = BasicCell(Bezugszeile, 8)
e.Value = BasicCell(Bezugszeile, 9)
t_min.Value = BasicCell(Bezugszeile, 10)
p_pitch.Value = BasicCell(Bezugszeile, 11)
Threading.Value = BasicCell(Bezugszeile, 12)
dk_max.Value = BasicCell(Bezugszeile, 13)
oExcel.Quit
part1.Update
End Sub
Falls Ihr Unsauberkeiten in der Programmierung entdeckt, lasst es mich bitte wissen!
Mit freundlichem Gruß
Stephan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP