ggforum
Goto Top

Excel VBA Commandbutton Zellen, denen Namen zugeordnet sind, berechnen und Meldung

Guten Tag,ich bekomme es einfach nicht hin. Mit "normalen" Excel-Berechnungen komme ich ganz gut klar, hier muss aber VBA genutzt werden.
Hab schon das ganze www durchsucht und blicks einfach nicht...:frage:

Aufgabenstellung: Ich möchte meine Ernährung kontrollieren
1.Schaltfläche: eine heisst steak
Wenn ich die klicke, dann sollen andere mit anderen Namen versehene Zellen +1 dazubekommen
2. bei click
3. Es gibt Zellen, die Namen zugeordnet sind (Steak, Braten, Schnitzel, sind alle mit dem Namen Fleisch versehen)
3. Zahlen addieren (immer die gleiche, z.B. 1) in Zellen verschiedener Arbeitsmappen und Arbeitsplätter
4. Gleichzeitig Wert einzelner Zellen UND mit Namen versehene Zellgruppen auf 0 setzen.
5. es sollen Meldungen bei verschiedenen Zellwerten und - Abstufungen kommen

1. Ansatz:
Sub CommandButton1_Click()
If ActiveSheet.CommandButton1 = True Then
Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst) = Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst) + 1
Range (gefluegel) = Range (gefluegel)= 0
Else
End If
End Sub

2. Ansatz als Funktion
a) vba
Sub CommandButton1_Click()
nahrung
End Sub

b) funktion
Function nahrung()
Range(naehrmittel, fleisch, wurst, käse, marmelade, gefluegel, gemuese, obst) As Range
Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst).Value = Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst).Value + 1
Range (gefluegel).Value = Range (gefluegel).Value = 0
End Function

Meldungen:

Wenn ich z.B. 7x was gegessen habe, was KEIN Gemüse ist (also klick auf steak etc), soll bei dem Wert 7 in Gemüse die Meldung kommen: Hey, Du hast jetzt schon 7x was anderes als Gemüse gegessen!

Kann mir da jemand weiterhelfen?

In einem weiteren Schritt später, (ist aber nicht so wichtig) wenn es ginge, würde ich ganz gern die Klicks mit dem Datum zusammen in einem anderen Blatt, vielleicht sogar anderer Arbeitsmappe, zählen und auswerten können.

Also z.B.
Felder
Datum:2014-05-27
Zeit: 16:15
Was: Steak
Gruppe: Fleisch

Danke für Ihre/ Eure Zeit/Hilfestellung
LG
Gabi

Content-Key: 239475

Url: https://administrator.de/contentid/239475

Ausgedruckt am: 28.03.2024 um 10:03 Uhr

Mitglied: 114757
Lösung 114757 29.05.2014, aktualisiert am 06.06.2014 um 12:23:36 Uhr
Goto Top
Hallo Gabi,
Aufgabenstellung: Ich möchte meine Ernährung kontrollieren
schön und gut, aber eigentlich das falsche Forum dafür.

Was wohl auch keiner so richtig checkt ist, das du mit Klick auf einen Button Fleisch, Zellen mit Gemüse oder Obst hochzählen willst: (hääää??)
Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst).Value = Range(naehrmittel, fleisch, wurst, käse, marmelade, gemuese, obst).Value + 1
Zur Info: Die Angabe von String-Ranges müssen mit Anführungszeichen angegeben werden: Range("Obst").

Beispiel für Addition eines Bereiches (der mehrere Zellen umfassen kann):
Range("Obst").Value = Range("Obst").Value + 1
Range("Gemüse").Value = Range("Gemüse").Value + 1
'... und so weiter
'..
'.

Beispiel für das Prüfen des Wertes der Zelle A1 auf Worksheet 1, und bei überschreiten eines bestimmten Wertes eine Meldung anzeigen:
If Worksheets(1).Range("A1").Value = 7 then  
  msgbox "Du solltest Vegetarier werden ...das arme Schwein !",vbExclamation  
End If
Der Rest lässt sich schön in den einschlägigen Dokumentationen nachlesen:

Over&Out
Gruß jodel32
Mitglied: ggforum
ggforum 06.06.2014 um 12:25:50 Uhr
Goto Top
Danke an Euch, war ein paar Tage krank, deshalb erst jetzt...
LG