Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1084to1088
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Linie zeichnen
Claus
Hallo,
Wie lautet der Befehl um eine Linie zu zeichnen, und zwar vom Mittelpunkt einer Zelle zum Mittelpunkt einer anderen Zelle? Z.B. von B4 nach C7
Danke schon mal

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Linie zeichnen
08.07.2009 12:59:07
robert
hi,
aus dem forum..
meinst du so ?
gruß
robert

Sub Macro2()
Dim lbx As Long
Dim lby As Long
Dim lex As Long
Dim ley As Long
Dim shp As Shape
With Range("B4")
lbx = .Left + .Width / 2
lby = .Top + .Height / 2
End With
With Range("c7")
lex = .Left + .Width / 2
ley = .Top + .Height / 2
End With
ActiveSheet.Shapes.AddLine lbx, lby, lex, ley
End Sub


AW: Linie zeichnen
08.07.2009 13:18:04
Claus
Hallo Robert,
ah, interessant, dann geht es vermutlich nicht direkt,
sondern man holt sich die Koordinaten der Felder
und zeichnet dann die Linie.
Aber so meinte ich das schon, prima,
vielen Dank für die tolle Lösung.
Komme jetzt grade nicht zum ausprobieren, aber ich
denke das klappt.
Falls wider Erwartung doch nicht, würde ich mich
hier nochmals melden.
Also, vielen Dank und liebe Grüße
Claus
Anzeige
AW: Linie zeichnen
08.07.2009 19:16:47
Claus
Hallo,
hab´s getestet, und es geht wunderbar.
Mein nächstes Stadium wäre folgendes, viell. könntest du mir da auch noch weiter helfen:
In einem zweiten Blatt "Dat" stehen jetzt immer "Linienkoordinaten", z. B.:
A B C D (das sollen die Spalten sein)
2 2 4 5
1 3 7 4
4 4 5 5
Nun sollte mein Makro bei diesem Beispiel also im anderen Blatt "Str" folgende Linien zeichnen:
B2 nach D4, A3 nach G4, D4 nach E5
Wenn da noch mehr Werte stehen entsprechend auch diese Linien. (natürlich können das sehr viele werden, sonst bräuchte ich ja keinen Makro) Ein Farbindex käme auch noch hinzu, aber den kann ich wahrscheinlich selber dazubauen. Obwohl, genial wäre es natürlich, wenn ich in Spalte E (pro Zeile) die Hintergrundfarbe einstellen könnte und der Makro diese quasi erkennt und die Linie dann entsprechend so einfärbt.
(folgendermaßen habe ich bereits modifiziert:
ActiveSheet.Shapes.AddLine(lbx, lby, lex, ley).Select
Selection.ShapeRange.Line.ForeColor.SchemeColor = 40
Selection.ShapeRange.Line.Weight = 1.25
also mit .select dahinter kann ich die Linie noch verändern, wie genau bekomme ich im Makroaufzeichnungsmodus heraus - o.k., das ist laienhaft, aber ich kann halt keine VB-Syntax)
Also nochmal Danke für deine prima Lösung und Superdanke (o.k., ist frech) für weitere Hilfe.
Anzeige
AW: Linie zeichnen
08.07.2009 19:34:50
robert
hi,
frage:
wie ist aus den koordinaten ersichtlich, dass eine linie von B2 nach D4 sein soll ?
blick ich momentan nicht durch :o)
gruß
robert
In einem zweiten Blatt "Dat" stehen jetzt immer "Linienkoordinaten", z. B.:
A B C D (das sollen die Spalten sein)
2 2 4 5
1 3 7 4
4 4 5 5
Nun sollte mein Makro bei diesem Beispiel also im anderen Blatt "Str" folgende Linien zeichnen:
B2 nach D4, A3 nach G4, D4 nach E5
AW: Linie zeichnen
08.07.2009 19:40:38
Claus
Es sind eben immer Zahlen statt Buchstaben. (Rechenoperationen geben eben eher Zahlen als Buchstaben zurück)
2 2 entspricht B2, 4 5 entspricht D5, das ist alles.
Also aus dem Tabellenblatt "Dat" werden quasi die Start- und Endkoordinaten der Linie ausgelesen und im Tabellenblatt "Str" soll entsprechend gezeichnet werden...
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige