Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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

Neuen Button nicht auf dem ersten

Neuen Button nicht auf dem ersten
09.06.2016 16:35:48
Dieter(Drummer)
Guten Tag, VBA Experten,
mit folgendem Makro wird ein roter Button in der aktiven Tabelle erzeugt. Bei erneutem Aufruf des Makros wird wieder ein Button erzeugt, der DIREKT auf dem vorherigen liegt.
Was muss am Makro anders sein, damit bei neuem Aufruf, der neue Button nicht auf dem vorherigen liegt, sondern versetzt erscheint?
Danke für evtl.Lösung und Hilfe.
Gruß, Dieter(Drummer)
Musterdatei mit Makro (Aufruf mit String+b) anbei:
https://www.herber.de/bbs/user/106121.xlsm
'Mx: Alle Shapes werden Nummeriert
  • 
    Sub ButtonRotNeu()
    Application.Speech.Speak ("Es wird ein neuer roter Button erzeugt. Beim zweiten Aufruf  _
    liegt der neue Button auf dem ersten")
    ActiveSheet.Shapes.AddShape(msoShapeOval, 27.75, 15.75, 14.25, 12.75).Select
    With Selection.ShapeRange.Fill
    .Visible = msoTrue
    .ForeColor.RGB = RGB(255, 0, 0)
    .Transparency = 0
    .Solid
    End With
    With Selection.ShapeRange.Line
    .Visible = msoTrue
    .Weight = 1
    End With
    Selection.ShapeRange.Shadow.Type = msoShadow21
    Selection.ShapeRange.Width = 11.3385826772
    Range("A4").Select
    End Sub
    


  • 3
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Neuen Button nicht auf dem ersten
    09.06.2016 17:09:08
    Mullit
    Hallo,
    verzichte am besten immer auf die Selektiererei, dann im Prinzip so:
    Option Explicit
    
    Public Sub test()
    Dim sngShapeTop As Single
    With ActiveSheet.Shapes
        If .Count = 0 Then
           sngShapeTop = 15.75
        Else
          With ActiveSheet.Shapes(.Count)
              sngShapeTop = .Top + .Height + 10!
          End With
        End If
        With .AddShape(Type:=msoShapeOval, Left:=27.75, _
           Top:=sngShapeTop, Width:=11.3385826772, Height:=12.75)
            With .Fill
                .Visible = msoTrue
                .ForeColor.RGB = RGB(255, 0, 0)
                .Transparency = 0
                .Solid
            End With
            With .Line
                .Visible = msoTrue
                .Weight = 1
            End With
            .Shadow.Type = msoShadow21
        End With
    End With
    End Sub


    VBA/HTML - CodeConverter für Office-Foren
    AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
    Projektbetreuung durch mumpel



    Code erstellt und getestet in Office 12

    Gruß, Mullit

    Anzeige
    AW: Danke Mullit, prima Lösung ...
    09.06.2016 17:12:45
    Dieter(Drummer)
    ... und funktioniert perfekt.
    Gruß und noch einen schönen Abend,
    Dieter(Drummer)

    alles klar, prima und ebenso... owT
    09.06.2016 17:23:10
    Mullit

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige