Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Code für eine Routine

Betrifft: Code für eine Routine von: HanDie
Geschrieben am: 09.10.2014 16:31:32

Hallo,
wer kann mir mitteilen, wie eine Routine aussehen muss, die bewirkt, dass wenn ich in Excel ein Feld (z.B. A1) anklicke sich eine Inputbox öffnet in der ich dann eine Zahl eingeben kann. Danach soll eine Abfrage klären ob diese Zahl in D1 oder E1 übertragen wird.
Grund: Bei einer 2-tägigen Veranstaltung möchte ich die Teilnehmer der Einzelnen Gruppen
erfassen und säter sehen wie viel Teilnehmer der beteiligten Gruppen am 1. bzw. am 2. Tag
anwesend waren.
Ich weiß, ich könnte einfach beim Kommen die Anzahl eingeben und zu den bereits Anwesenden dazu addieren lassen, aber ich möchte es etwas komfortabler haben.
Vielen Dank
HanDie

  

Betrifft: AW: Code für eine Routine von: Frank
Geschrieben am: 09.10.2014 22:06:37

Hallo,

versuch's mal damit:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then
    GG = InputBox("Anzahl eingeben:", "Gruppengrösse")
    If Not GG = "" Then
        ZZT = MsgBox("Eintragen in D1 [Ja] oder E1 [Nein]?", vbYesNo, "Zielzelle bestimmen")
        Select Case ZZT
        Case 6
            Sheets(1).Cells(1, 4).Value = GG
        Case 7
            Sheets(1).Cells(1, 5).Value = GG
        End Select
    End If
End If
Sheets(1).Cells(2, 1).Select
End Sub

Wenn jemand anderes als Du selbst die Tabelle benutzen soll, würde ich Dir raten, noch eine Prüfung der Eingabe der Inputbox zu machen, dass da tatsächlich eine Zahl eingegeben wurde.
Die Zeile Sheets(1).Cells(2, 1).Select dient dazu, die Zellmarkierung auf eine andere Zelle zu platzieren, da der Code nur ausgeführt wird, wenn eine andere Zelle angewählt wird. Cells(2, 1) steht dabei für A2. Da kannst Du entsprechend andere Werte eintragen - ausser eben A1 (Cells(1, 1) wäre das).

Grüsse,
Frank


  

Betrifft: AW: Code für eine Routine von: Herbert Volkmann
Geschrieben am: 09.10.2014 23:11:01

Hallo HanDie

hier mal ein Beispiel, so wie ich die Frage verstanden habe.

https://www.herber.de/bbs/user/93073.xlsm

Viele Grüße

Herby


 

Beiträge aus den Excel-Beispielen zum Thema "Code für eine Routine"