cmq sah ihre untätigkeit nach dem posten ich verschwende nicht viel zeit darüber..
was du geschrieben hast, kann nicht funktionieren. .
a) eine autocad-excel schnittstelle ein minimum zu programmieren, das sie die grundlagen der vba sowohl für einen als auch für den anderen kennen müssen.
b)excel einmal öffnen sie müssen über, was blatt zu wetten
c).cells(1, a) bedeutet aus zwei gründen absolut nichts
1. zellen(1,
eine) ist nicht die excel-säule, sondern eine variable, die sie bereits verwenden
2. zellen(1, a)
der wert du musst sagen, was du nehmen willst
wenn sie eine cmq schleife wie oben geschrieben verwenden ist falsch
.zellen
i), 1). wert, bei dem ich mit jeder schleife (d.h. zeile) verstrickt werden soll
dann... ich verdünne mich nicht, weil ich nicht viel zeit habe...
dies unten ist ein code, der funktioniert die schleife, aber absichtlich nicht den text ... einfügen einen text sucht in die hilfe der sprachtext oder mtext und sie werden sehen, dass es gut erklärt, was zu tun ist. .
Code:
Sub blf()
varin mit den kordinates der 4 punkte für blindflansch
Dim p1(0 bis 2) als Puppe
dim p2(0 bis 2) wenn doppelt
Dim p3(0 bis 2) als Doppel
Dim p4(0 bis 2) als Doppel
Dim p5(0 bis 2) als Doppel
Dim p6(0 bis 2) als Doppelpunkt
Dim p7(0 bis 2), wenn getaucht
Dim p8(0 bis 2), wenn getaucht
Dim p9(0 bis 2) als Doppel
Dim p10(0 bis 2), wenn getaucht
varin für abmessungen
Dim q als Doppel
, wenn man
dim b als Doppel
dim d if doppelt
'variable für autocad-objekte
dim entline als acadline
dim newlayer als acadlayer
dim layerblf(0 bis 2) als String
'variable für excel-objekte
dim ssetobj als acadselectionset
Dim segeln als ganze Zahl
dim strfilename als String
[COLOR="Red"]dim excel als objekt
fehlerwiederaufnahme
set excel = getobject(, "excel.application")
wenn er 0)
err.clear
set excel = createobject("excel.application")
wenn er 0)
msgbox "kann nicht geladen excel.", vbexam
Ende
Ende
Ende
fehler goto 0
excel.visible = true
excel.workbooks.open ("c:\misure.xls")
set excelsheet = excel.activeworkbook.sheets("foglio1")[/COLOR]Layerblf(0) = "tubazioni"
Layerblf(1) = "assi"
Layerblf(2) = "testo"
diese zeichnung.layers.add layerblf(0)
diese zeichnung.layers.add layerblf(1)
diese zeichnung.layers.add layerblf(2)
q = 0
[COLOR="Red"] und als Ganzes
= 1
do while excelsheet.cells(i, 1).value <> ""[/COLOR]' hier beginnt die schleife
[COLOR="Red"] b = excelsheet.cells(i, 1).wert
d = excelsheet.cells(i, 2).value
a = excelsheet.cells(i, 3).value[/COLOR]p1(0) = q
p1(1) = 0
p1(2) = 0
p2(0) = q + b
p2(1) = 0
p2(2) = 0
p3(0) = q + b
p3(1) = d
p3(2) = 0
p4(0) = q
p4(1) = d
p4(2) = 0
p5(0) = q - 33
p5(1) = d / 2 - a / 2
p5(2) = 0
p6(0) = q + b + 33
p6(1) = d / 2 - a / 2
p6(2) = 0
p7(0) = q - 33
p7(1) = d / 2
p7(2) = 0
p8(0) = q + b + 33
p8(1) = d / 2
p8(2) = 0
p9(0) = q - 33
p9(1) = d / 2 + a / 2
p9(2) = 0
p10(0) = q + b + 33
p10(1) = d / 2 + a / 2
p10(2) = 0
neue schicht einstellen = thisdrawing.layers(layerblf(0))
Diese zeichnung. aktivlayer = newlayer
set entline = thisdraw.modelspace.addline(p1, p2)
set entline = thisdraw.modelspace.addline(p2, p3)
set entline = thisdraw.modelspace.addline(p3, p4)
set entline = thisdraw.modelspace.addline(p4, p1)
neue schicht einstellen = thisdrawing.layers(layerblf(1))
Diese zeichnung. aktivlayer = newlayer
set entline = thisdraw.modelspace.addline(p5, p6)
set entline = thisdraw.modelspace.addline(p7, p8)
set entline = thisdraw.modelspace.addline(p9, p10)
'scrittura del testo con le informazioni della flangia
neue schicht einstellen = thisdrawing.layers(layerblf(2))
Diese zeichnung. aktivlayer = newlayer
[COLOR="Red"] i = i + 1
q = q + 200
Wie geht's?[/COLOR]'ende der schleife
' nach zeichnung ist zoom-extend
ende
zu ficken von hier und der code ist auch gut, aber zumindest müssen sie sich dorthin setzen, um zu verstehen, was man und warum.
ich empfehle eine gute lektüre zumindest der hilfe, bevor ich fortfahre, denn in diesem "programm" fehlt die auswahl eines insertionspunktes, jede art von fehlerkontrolle, ein zyklusmanagement... ich meine, alles fehlt.
zwischen den zu lösenden problemen muss ich über dem flansch einen text (multiline oder mehr texte zu einer zeile und dergleichen) erstellen, der einen text innerhalb des wertes der variablen zurückbringt.
wie oben erwähnt, sind die probleme sicherlich nicht bei der einfügung eines textes.