Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1200to1204
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
Inhaltsverzeichnis

linien zur fläche verbinden

linien zur fläche verbinden
Detlef
hallo excelgemeinde;
ich hab mit diesem Makro ein rombus gezeichnet
Sub rombus()
ActiveSheet.Shapes.AddLine 100, 100, 200, 200
ActiveSheet.Shapes.AddLine 200, 200, 300, 100
ActiveSheet.Shapes.AddLine 300, 100, 200, 0
ActiveSheet.Shapes.AddLine 200, 0, 100, 100
End Sub

und möchte die Linien jetzt verbinden damit ich die fläche mit farbe ausfüllen kann
das nächste makro kann ich so nicht nutzen da ich die linien auch noch als sololinie benötige
'

Sub beispiel()'zeichnet keinen rombus
'Dim sha As Object
'Set sha = ActiveSheet.Shapes.BuildFreeform(msoEditingAuto, 100, 100)
'sha.AddNodes msoSegmentLine, msoEditingAuto, 200, 200
'sha.AddNodes msoSegmentLine, msoEditingAuto, 300, 100
'sha.ConvertToShape
'End Sub

Manuell gibt's da noch einen Befehl wie...
23.02.2011 02:24:25
Luc:-?
Linienzug schließen, Detlef,
den gibt's vielleicht auch in VBA… Bemühe doch mal die VBE-Hilfe oder versuche das mit dem Recorder aufzuzeichnen! Geht oft schneller!
Gruß Luc :-?
AW: Manuell gibt's da noch einen Befehl wie...
23.02.2011 19:48:48
Detlef
Danke Luc;
aber bei Excel 2007 is nix mit Makrorekorder bei diesem Problem -nimmt nix auf-
in der Hilfe hab ich auch nichts brauchbares gefunden und beim experimentieren mit den für mich ersichtlichen Excelmitteln auch nicht
Gruß Detlef
AW: linien zur fläche verbinden
23.02.2011 22:19:20
Reinhard
Hallo Detlev,
zeichne doch einen Rombus, färb den, dann zeichnest du noch die Linien auf den Rombus als Einzellinien nach.
Gruß
Reinhard
Anzeige
AW: linien zur fläche verbinden
24.02.2011 17:16:01
Detlef
Danke Reinhard für deine Antwort aber den Rombus habe ich einfachheitshalber gewählt zur Problemlösung, bei den Linien handelt es sich tatsächlich um Grenzlinien auf einer Karte und die müssen an allen Abschnitten mit dem Nachbar"rombus" identisch sein; das bekomme ich mit "malen" einfach nicht hin
AW: linien zur fläche verbinden
24.02.2011 17:54:18
Reinhard
Hallo Detlef,
Zeichnen der Dinge per Vba.
Gruß
Reinhard
AW: linien zur fläche verbinden
24.02.2011 19:00:00
Detlef
Ja Reinhard mach ich jetzt schon; ist nur mühselig da jedes Punktpaar einzeln angegeben werden muss
Nicht unbedingt nötig! Sieh dir mal das...
24.02.2011 20:52:08
Luc:-?
FreeFormBuilder-Objekt an, Detlef,
nur dem gesteht VBA das Schließen der Form zu mit der Methode .ConvertToShape (kann man dann auch aufzeichnen!), obwohl das in Xl auch mit Linien fktt (kann man in keiner xlVs ab 8-9 aufzeichnen). Wird wohl wieder so etwas wie mit den Textfeldern sein, wo man einem als TextBox deklarierten Objekt kein als Shape deklariertes zuordnen kann, aber evtl klappt's unter Verzicht auf den VBE-Intellisense mit Deklaration als Object, auf jeden Fall aber mit ActiveWindow.Selection.ShapeRange(1). Das könnte hier auch ähnl, nicht genauso sein. Auf jeden Fall muss auch beim FreeFormBuilder erst mal ein Knoten (Node) hinzugefügt worden sein bevor .ConvertToShape angewendet wdn kann. Viell darf das auch keine Linie, sondern muss eine Kurve sein, damit es fktt. Auf jeden Fall solltest du damit mal experimentieren. Viell bekommst du es ja hin, das Objekt so allgemein darzustellen, dass es von .BuildFreeForm akzeptiert wird. Erst dann kannst du auch die Konvertierung anwenden. Anderenfalls musst du eben in den sauren Apfel beißen und 'ne Freihandform nehmen.
Ich hab' jetzt keine Lust mehr zum Experimentieren. Das kannst ja auch du machen! ;-)
Gruß Luc :-?
Anzeige
Ergänzung: VBA (ConvertToShape) fktt wohl...
25.02.2011 01:18:20
Luc:-?
…etwas anders als die normale xlGrafik. Es scheint kein echtes VBA-Äquivalent zum auch aus reinen Grafikpgmm bekannten Kurve schließen/öffnen zu existieren. Beim FreeformBuilder muss der letzte Knoten auf den ersten gelegt wdn, wenn später alle Seiten Rahmenlinien haben sollen. ConvertToShape konvertiert auch Objekte mit nicht geschlossenem Linienzug ohne die letzte Seite zu schließen. Beim Anlegen der Linien kann man sich zwischen SegmentLine und SegmentCurve unterscheiden und so ggf mit nur wenigen .AddNodes auskommen.
Gruß Luc :-?
AW: Ergänzung: VBA (ConvertToShape) fktt wohl...
25.02.2011 21:18:07
Detlef
Danke Luc;
ich werde weiter experimentieren; ich finde es immer wieder super wie ihr Excel-Profies einem Deppen wie mir helfen könnt und es auch noch macht ---- schlaft ihr eigentlich auch?
Anzeige
Nein, nie! Euretwegen! ;-) SchöWE owT
26.02.2011 11:53:05
Luc:-?
:-?

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige