Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1412to1416
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

Radio-Button

Radio-Button
02.03.2015 10:59:28
Werner
Hallo Forum,
ich habe eine Excel-Anwendung geschrieben, in welcher bei Bedarf Auswertungen gemacht werden. Dabei benötige ich vom Anwender noch die Jahreszahl, für welche die Auswertung gemacht werden soll. Vielmehr möchte ich dies auf das aktuelle Jahr und die 4 Jahre davor begrenzen. Aktuell wäre das also 2010 bis 2015.
Nun suche ich nach einer Möglichkeit, dass der Anwender eine aus diesen 5 maschinell vorgegebenen Werte auswählt. Ich habe schon etwas von Radio-Button gehört, kenne mich aber damit nicht aus. Und es sollte eine Möglichkeit sein, dieses Auswahlmenue bei Bedarf durch VBA erst zu erzeugen.
Wer kann mir Beispiele für mein Problem liefern?
Gruß aus dem Schwabenland
Werner

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Radio-Button
02.03.2015 11:12:08
Daniel
Hi
lass die Buttons weg und lass die Eingabe in eine Zelle machen.
Über DATEN - DATENTOOLS - DATENÜBERPRÜFUNG mit
- Zulassen: Liste
- Quelle: 2010;2011;2012;2013;2014;2015
erscheint dann in der Zelle ein DropDownfeld und der Anwender kann nur aus diesen Werten auswählen.
man kann das auch maschinell erstellen lassen (hier für die Zelle A1):
Sub Makro1()
Dim EingabeMöglichkeiten As String
Dim i As Long
For i = Year(Now) - 4 To Year(Now) - 1
EingabeMöglichkeiten = EingabeMöglichkeiten & i & ","
Next
EingabeMöglichkeiten = EingabeMöglichkeiten & i
With Range("A1").Validation
.Delete
.Add Type:=xlValidateList, _
AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, _
Formula1:=EingabeMöglichkeiten
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub

Gruß Daniel

Anzeige
AW: Radio-Button
02.03.2015 13:33:07
Werner
Hallo Daniel,
vielen Dank für die rasche Antwort. Ich habe den Code kopiert und in eine neue Tabelle eingefügt und dann ausgeführt. Leider habe ich in meiner Excel-Tabelle keine Änderung gesehen. Erst, nachdem ich auf das Feld A1 geklickt hatte, sah ich, dass ich hier etwas auswählen kann. Dieses Problem habe ich inzwischen dadurch gelöst, dass ich in das Feld "A1" einen Text gestellt habe:
Range("A1").Value = "bitte auswählen"
Mein noch offenes Problem: wie prüfe ich nun, ob eine Eingabe gemacht wurde? Leider ist das in dem bereitgestellten Beispiel nicht vorgesehen.
Gruß
Werner

Anzeige
AW: Radio-Button
02.03.2015 13:50:25
Daniel
Hi
du kannst ja prüfen, ob in der Zelle eine Zahl drin steht.
wenn ja, dann wurde eine Eingabe gemacht.
If Isnumeric(Range("A1").Value)
Gruß Daniel

AW: Radio-Button
02.03.2015 14:06:01
Werner
Hallo Daniel,
das ging aber wieder flott mit der Antwort.
Ich finde jedoch noch keinen richtigen Ansatz für die Lösung. Natürlich muss der Anwender zuerst ein Macro aktivieren, mit dem die Suche gestartet wird. Das würde mich dann dazu veranlassen, die Frage aufzubauen. Und dann? Soll ich dann in einer Loop solange abfragen, bis er endlich in Zelle A1 eine numerische Eingabe hineingestellt hat? Und wie kann er, während mein Macro in einer Loop ist, Excel beenden?
Gruß
Werner

Anzeige
AW: Radio-Button
02.03.2015 15:12:28
daniel
Nutze das Change-Event des Tabellenblatt.
Dieses Makro wird automatisch gestartet, wenn du auf dem Blatt einen Zellwert änderst. In der Variablen Target steht die geänderte Zelle, dh du musst prüfen, welche Zelle geändert wurde und dann das eigentliche Makro starten oder eben nicht.
Gruß Daniel

AW: Radio-Button
02.03.2015 17:50:28
Werner
Hallo Daniel,
meine geschilderten Probleme sind gelöst. Herzlichen Dank für die brauchbaren Vorschläge. Ich bin zufrieden.
Der Hinweis auf das Change-Event war der Durchbruch.
Gruß
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige