Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: CommandButton mit Funktion kopieren

CommandButton mit Funktion kopieren
rookie87
Hallo.
Ich habe folgendes Problem:
Ich habe eine Zeile (z.B. Zeile 10) mit einem CommandButton1, der beim Betätigen die erste der Zeile (z.B.Zelle A10) um 1 hoch zählt.
Jetzt möchte ich über einen "Einfügen"-Button diese Zeile inkl. Button so kopieren, dass die neue Zeile die gleiche Foramtierung hat wie Zeile 10 und der neue CommandButton die erste Zelle der neuen Zeile hochzählt!
Meine Buttons zählen alle die gleiche Zelle hoch oder werden ohne Quelltext kopiert...
Kann mir jemand helfen?
Danke...
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: CommandButton mit Funktion kopieren
01.03.2012 07:00:26
fcs
Hallo rookie,
als Schaltfläche muss du hier die Schaltfläche aus den Formular-Steuerelementen verwenden. So kann die Schaltfläche mit den Zellen kopiert werden.
Das mit den Schaltflächen verknüpfte Makro solltest du in einem allgemeinen Modul der Datei einfügen. Das Makro muss natürlich vor dem Kopieren zugewiesen sein.
Makro:
'Makro erstellt unter Excel 2007
Sub ZelleAPlus1()
'In Spalte A der Zeile, in der sich die linke obere Zelle des verknüpften Shape-Elements  _
befindet, _
den Wert um 1 erhöhen
With ActiveSheet
With .Cells(.Shapes(Application.Caller).TopLeftCell.Row, 1)
.Value = .Value + 1
End With
End With
End Sub

Es ist aber ggf. einfacher so einen Zähler per Doppelklick-Ereignismakro in die entsprechenden Zellen zu realiseren. So ein Makro muss dann im VBA-Editor unter der entsprechenden Tabelle eingefügt werden.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 And Target.Row > 4 And Target.Cells.Count = 1 Then
Cancel = True
Target.Value = Target.Value + 1
End If
End Sub

Gruß
Franz
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

CommandButton mit Funktion kopieren in Excel


Schritt-für-Schritt-Anleitung

  1. CommandButton erstellen:

    • Wähle die Excel-Datei aus, in der Du den Button einfügen möchtest.
    • Klicke auf „Entwicklertools“ in der Menüleiste und wähle „Einfügen“.
    • Wähle „CommandButton“ aus den Formular-Steuerelementen und platziere ihn in Deiner gewünschten Zelle (z.B. A10).
  2. Makro zuweisen:

    • Klicke mit der rechten Maustaste auf den CommandButton und wähle „Makro zuweisen“.
    • Erstelle ein neues Makro mit folgendem VBA-Code:
    'Makro erstellt unter Excel 2007
    Sub ZelleAPlus1()
       'In Spalte A der Zeile, in der sich die linke obere Zelle des verknüpften Shape-Elements befindet,
       'den Wert um 1 erhöhen
       With ActiveSheet
           With .Cells(.Shapes(Application.Caller).TopLeftCell.Row, 1)
               .Value = .Value + 1
           End With
       End With
    End Sub
  3. Zeile kopieren:

    • Markiere die gesamte Zeile, die den CommandButton enthält (z.B. Zeile 10).
    • Nutze die Funktion „Einfügen“ (Rechtsklick -> Einfügen oder Strg + V), um die Zeile darunter zu kopieren.
    • Überprüfe, ob der neue CommandButton korrekt funktioniert und die Zelle in der neuen Zeile hochzählt.

Häufige Fehler und Lösungen

  • Problem: Der neue CommandButton zählt nicht die richtige Zelle hoch.

    • Lösung: Stelle sicher, dass das Makro vor dem Kopieren zugewiesen ist und dass Du die Schaltfläche aus den Formular-Steuerelementen verwendest.
  • Problem: CommandButton wird ohne Quelltext kopiert.

    • Lösung: Vergewissere Dich, dass Du die Zeile vollständig markierst und nicht nur die Zelle mit dem Button.

Alternative Methoden

Eine einfachere Methode könnte sein, einen Excel-Auswahlbutton einfügen, der mit einem Doppelklick-Ereignis verknüpft ist. Du kannst folgendes Makro im VBA-Editor unter der entsprechenden Tabelle einfügen:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Column = 1 And Target.Row > 4 And Target.Cells.Count = 1 Then
        Cancel = True
        Target.Value = Target.Value + 1
    End If
End Sub

Diese Methode erfordert keinen CommandButton und kann einfacher zu implementieren sein.


Praktische Beispiele

  • Beispiel 1: Du hast eine Liste von Verkaufszahlen in Spalte A. Mit einem CommandButton in Zeile 10 kannst Du die Verkaufszahlen für jeden Verkaufsmitarbeiter einfach um 1 erhöhen, indem Du den Button drückst.

  • Beispiel 2: Wenn Du einen Excel-Auswahlbutton in Zeile 11 hinzufügst, kannst Du durch Doppelklick die Verkaufszahlen ebenfalls erhöhen, ohne einen CommandButton erstellen zu müssen.


Tipps für Profis

  • Nutze die Funktion „Format übertragen“, um die Formatierung der Zeile schnell zu kopieren.
  • Experimentiere mit der Verwendung von ActiveX-Steuerelementen, wenn Du mehr Anpassungsmöglichkeiten benötigst.
  • Halte Deine Makros in einem allgemeinen Modul organisiert, um die Übersichtlichkeit zu verbessern.

FAQ: Häufige Fragen

1. Wie füge ich einen CommandButton in Excel ein?
Du kannst einen CommandButton über das Menü „Entwicklertools“ einfügen und dann „Einfügen“ auswählen.

2. Kann ich mehrere CommandButtons gleichzeitig erstellen?
Ja, Du kannst mehrere CommandButtons erstellen, indem Du den ersten Button kopierst und in die gewünschten Zellen einfügst, achte jedoch darauf, dass Du die zugehörigen Makros entsprechend anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige