bei best. Wert in Zelle soll Fenster sich öffnen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: bei best. Wert in Zelle soll Fenster sich öffnen
von: roaky
Geschrieben am: 27.03.2005 17:00:09
Hallo,
ich bin mal wieder am grübeln, vielleicht kann mir jemand weiterhelfen.
Ich habe eine Zelle B26 in der ich eine Gültigkeit definiert habe. Die Gültigkeit ist eine Liste mit Dropdownmenü aus der der User einen bestimmten Wert für diese Zelle von mehrern vorgegebenen Werten auswählen kann.
Nun soll, wenn in dieser Zelle ein ganz bestimmter Wert aus der Liste ausgewählt wird, sich ein Popup- Fenster öffnen, in dem eine Nachricht/ Vermerk steht. Dieses Fenster soll man aber auch von Hand wieder schließen können.
Wenn jemand eine Idee hat, bitte sofort posten.
Danke
Roaky

Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffnen
von: th.heinrich
Geschrieben am: 27.03.2005 17:23:29
hi Roaky,
in B4:B7 steht die Liste Gültigkeit
Tabelle1
 ABC
4212
5 2 
6 3 
7 4 
Formeln der Tabelle
C4 : =WENN(A4=4;"achtung";A4)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  

gruss thomas
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 12:21:56
Vielen Dank Thomas,
aber deine Lösung ist nicht genau das was ich suche.
Ich habe eine Zelle B26 zu der ich eine Gültigkeit zugewiesen habe. Klicke ich auf diese Zelle, dann kann ich ein Dropdownmenü öffnen, in dem ich aus mehreren Werten auswählen kann (zb: 2;4;6;8;...). Nun möchte ich, dass wenn der User zum Beispiel den Wert 6 auswählt, sich ein Popup- Fenster öffnet, in dem ein Hinweis an den User steht. Dieser Hinweis soll in keiner anderen Zelle stehen sondern wie eben beschrieben in einem kleinen seperaten Fenster, welches der User dann manuell schließen soll. Dieses Fenster soll nur aufdroppen wenn der Wert 6 ausgewählt wird - bei den restlichen Werten passiert nichts.
Vielleicht ne Idee?
Danke
Roaky
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 12:35:55
Hallo Roaky! (realnames sind hier üblich und erwünscht!)
Kopiere diesn Code in das Modul der Tabelle!
(Rechtsklick auf Blattregister > Code anzeigen > in das rechte Fenster kopieren!)

Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Address = "$B$26" And Target = 6 Then
   MsgBox "Du hast sex gewählt!", vbInformation, "Hinweis für " & _
                                          Application.UserName
   End If
End Sub


Gruß Sepp
P.S.: Rückmeldung nicht vergessen!


Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 12:47:09
Hallo Sepp,
erstmal vielen Dank für deine Hilfe!
Leider weiß ich nicht, was ich hier machen soll:
Kopiere diesn Code in das Modul der Tabelle!
( Rechtsklick auf Blattregister - Code anzeigen - in das rechte Fenster kopieren! )"
Kannst du mir das bitte noch etwas ausführlicher erklären? DANKE schonmal!
Roaky
ist mein Vorname - komme aus Jamaika ;)
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 12:52:16
Hallo Roaky!
Sorry Rastaman, das konnte ich ja nicht ahnen;-)
Also nochmal langsam zum mitschreiben.
Mach auf das Blattregister (dort wo der Tabellenname steht) der Tabelle einen Klick mit der rechten Maustaste.
Im sich öffnenden Kontextmenü wählst du "Code anzeigen".
In das sich öffnende Fenster kopierst du nun den Code.

Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 13:02:48
Hallo Sepp,
kein Problem mit meinem Namen - klingt wirklich etwas exotisch... ach ja Sonne, Strand und Meer!
Zurück zu Excel:
Das habe ich nun geschafft und dein Script eingefügt. Aber leider funktioniert es nicht. Wenn ich auf die Play Taste klicke, dann zeigt er einen anderen Code an, der sich auch schon in dieser Tabelle befindet.

Sub Ausblenden()
Dim r As Range, lz As Long, ls As Integer, i As Long
Set r = ActiveSheet.UsedRange
lz = r(r.Count).Row
ls = r(r.Count).Column
Debug.Print lz, ls
Rows(lz + 1 & ":65536").Hidden = True
Range(Cells(1, ls + 1), Cells(1, 256)).EntireColumn.Hidden = True
End Sub

Vertragen sich vielleicht beide Scripte nicht?
Danke
Roaky
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 13:15:42
Hallo Roaky!
Meinen Code kannst du nicht mit der Playtaste starten!
er startet automatisch, wenn du in B26 die 6 auswählst!
Vorausgesetzt du hast den Code wirklich in das Modul der Tabelle kopiert.

Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 13:24:21
Hallo Sepp,
sorry das es nicht funktioniert aber ich habe es genau so gemacht wie du es mir erklärt hast.
code copiert - Tabelle geöffnet - Code anzeigen - dann in dieses weisse Fenster den Code eingetragen. Dann gespeichert und oben links in der Menüleiste auf dieses kleine grüne Excel Icon geklickt und schwupps war ich wieder bei meiner Excel Tabelle angelangt. Dann habe ich nur nochmal gespeichert und in der Zelle B26 die Zahl 6 ausgewählt - nix passiert!
Habe nochmal neu gestartet - es geht leider auch nicht.
Ist da vielleicht ein kleiner Fehler im Code enthalten?
Roaky
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 13:35:31
Hallo Roaky!
Der Code funzt!
Hier ein Beispiel.
https://www.herber.de/bbs/user/20240.xls

Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 13:40:59
Stimmt - klasse genauso wollte ich das (nur nicht den Textinhalt :))
Okay,
kann es sein, dass es einen Konflikt in meiner Excel Tabelle gibt, weil ich zwei verschiedene Codes verwende? Einmal deinen und dann den anderen, den ich dir vorhin eingefügt habe.
Ich kann es mir einfach nicht erklären wo das Problem liegt...
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 13:45:30
Habe gerade etwas bemerkt:
Wenn ich deine Excel Tabelle öffne und mir den Code anzeigen lasse, dann kommt ein zusätzliches Fenster mit dem Inhalt "Option Explicit" welches ich in meiner Excel Tabelle nicht habe, wenn ich mir den Code anzeigen lasse.
Kann dies auf einen Fehler hindeuten?
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 14:02:42
Kannst du mir bitte noch einen Tipp geben:
Ich öffne meine Excel Tabelle, klicke oben wo der Name steht (Mappe1) mit einem Rechtsklick drauf und gehe auf "Code anzeigen".
Nun öffnet sich "Microsoft Virtual Basic - Mappe1" und in das leere weisse Fenster füge ich den Code ein. Nun klicke ich auf "Speichern" und schliesse MVB wieder.
Jetzt sehe ich meine Excel Tabelle wieder und gehe auf Zelle B in die Zeile 26 und gebe dort die Ziffer 6 ein. Nichts passiert!
Was mache ich falsch?
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 14:06:45
Hallo Roaky!
"Option Explicit" bedeutet das eine Explizite Variablendeklaration verlangt wird!
Diese Option kannst du im VBE unter Extras > Optionen > Editor einstellen.
Mit dem Code selber hat das nichts zu tun, es ist aber ratsam diese Option
zu aktivieren, um fehler bei der variablendeklaration zu vermeiden!
Bist du sicher das du den Code in das richtige Modul kopiert hast?
Öffne mit Alt+F11 den VBE, rechts siehst du den Objektexplorer, klicke dort
doppelt auf deine Tabelle. Im rechten Fenster sollte nun der Code zu sehen sein.
Ich vermute mal, das du den Code unter "DieseArbeitsmappe" stehen hast, und
da gehört er aber nicht hin!

Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 14:15:21
Super, es funktioniert!
Hatte es tatsächlich falsch eingefügt - naja nun weiß ichs ja ;)
Vielen Dank nochmal für deine Hilfe!!
Roaky
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: roaky
Geschrieben am: 28.03.2005 14:22:49
Eine letzte Frage noch:
Wie verändere ich dein Code, wenn ich möchte, dass der Hinweis nicht nur bei Zelle B26, sondern bei den Zellen B26 bis Z26 kommen soll.
Hab einiges probiert aber es kam immer ein Fehler...
Danke
Roaky
Bild

Betrifft: AW: bei best. Wert in Zelle soll Fenster sich öffn
von: Josef Ehrensberger
Geschrieben am: 28.03.2005 14:42:41
Hallo nochmal!
Dann so.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B26:Z26")) Is Nothing Then
   If Target.Count = 1 And Target = 6 Then
   MsgBox "Du hast sex gewählt!", vbInformation, "Hinweis für " & _
                                          Application.UserName
   End If
End If
End Sub


Gruß Sepp
P.S.: Rückmeldung nicht vergessen!


 Bild

Beiträge aus den Excel-Beispielen zum Thema "bei best. Wert in Zelle soll Fenster sich öffnen"