262 Aufrufe
Gefragt in Tabellenkalkulation von
Guten Abend

Ich versuche schon seit einiger Zeit Makros die ich mehreren Command Buttons zugewiesen habe auch in Excel -Formen zuzuweisen und auszuführen., was aber ohne Erfolg ist.

Die makros im command Button funktionieren einwandfrei Was mache ich falsch

hier noch ein Beispielmakro was ich einem Command Button zugewiesn habe , was aber bei der Form " Elipse 1_ klicken " nicht funktioniert :

Private Sub Bull_Click()

With ActiveCell

   .Value = Bull.Caption
   .Offset(0, 1) = 25
   If .Column < 6 Then
     .Offset(0, 2).Select
    Else
     .Offset(1, -4).Select
   End If
End With
Bull.BackColor = 5753088 ' Command Button Farbe Grün
End Sub

wer weis eine Lösung

Danke

3 Antworten

0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo,

das funktioniert nicht, weil du kein Makro mit dem Namen "Elipse 1_ klicken" hast.

Wenn du eine Form in dein Tabellenblatt eingefügt hast und dann der Form mit der rechten Maustaste ein Makro zuweisen willst, dann steht in dem sich öffnenden Fenster der Name des erwarteten Makros, also z.B. Elipse 1_ klicken. Kopiere diesen Namen und benenne das Makro, das du der Form zuweisen willst entsprechend um. Dann wird dein Makro mit einem Klick auf die Form ausgeführt. Schreibe die entsprechenden Makros in ein allgemeines Modul.

Wenn du die Makros im VBA-Projekt des Tabellenblatts stehen hast, dann klicke noch einmal "Makro zuweisen" und und wähle z.B. das Makro "Tabelle1.Ellipse2_Klicken" aus.

Gruß

M.O.
0 Punkte
Beantwortet von
Hallo

Deine Anleitung habe ich befolgt und es funktioniert , Danke     habe noch die Codezeilen

 .Value = Bull.Caption

Bull.BackColor = 5753088 ' Command Button Farbe Grün

entfernt

leider wird der Text , den ich in die Form geschrieben habe nicht mit in die jeweils ersten Zellen übertragen

was beim Command Button funktionierte

Könntest Du mir da vielleicht weiterhelfen

Danke

MfG
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)

Hallo,

eine Form kannst du nicht mit einem Commandbutton vergleichen. Daher funktionieren die Befehle, die du für einen Command-Button nutzen kannst hier nicht.

Hier ein Beispielcode für die Form Rechteck1 (der Code ist entsprechend der obigen Anleitung der Form zuzuweisen):

Sub Rechteck1_Klicken()

Dim ActiveShape As Shape

'Form, auf die geklickt wurde der Variablen zuweisen
Set ActiveShape = ActiveSheet.Shapes(Application.Caller)

'Nun den Text, der in der Form steht, in Zelle A1 ausgeben
Range("A1") = ActiveShape.TextFrame.Characters.Text

End Sub


Gruß

M.O.

...