Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1792to1796
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

"Infozelle" erstellen, Text variabel

"Infozelle" erstellen, Text variabel
23.11.2020 10:12:30
Danie
Liebe Excel-Profis,
nachdem ich seit Jahren hier immer mal wieder stumm mitlese und dann aus den Problemen anderer lerne, habe ich nun selbst ein Anliegen bei dem ich hoffe, dass ihr mit hier weiterhelfen könnt.
Ich habe ein Tabellenblatt erstellt mit unterschiedlich beschrifteten Spalten.
Oben im Kopf habe ich eine Zelle als "Infobox" betitelt, welche mir Infos zu anderen Zellen anzeigen soll. Das hat den Hintergrund, dass ich NICHT mit Kommentaren arbeiten möchte, sondern gerne einen Ort für die Hilfe-Anzeigen hätte..
Beispiel:
ich klicke in eine Zelle in dem Bereich von Spalte B und oben wird angezeigt: "Hier bitte die Kurzbezeichnung nach folgendem Schlüssel eingeben. ...".
Klicke ich nun in ein Feld der Spalte D, welches ebenfalls mit einem "Infokommentar" belegt sein soll, soll ein anderer Text in der Infobox angezeigt werden.
Wird eine Zelle angeklickt, hinter der gar kein Kommentar stehen soll, so soll auch keiner angezeigt werden.
In meinem tabellenblatt habe ich es bisher soweit hinbekommen, dass das Ganze genau für eine Spalte bzw. einen Fall funktioniert. Klickt man diesen an, wird der entsprechende Text oben angezeigt. Klickt man daneben, passiert wie gewünscht nichts. ich denke, dass man hier mit der CASE-Bedingung arbeiten sollte, aber dazu fehlen mir leider die Kenntnisse.
Über den einen oder anderen Ratschlag eurerseits würde ich mich sehr freuen. Vielen Dank!
Hier noch der bisherige Quelltext:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Zelle As Range
Dim Zelle2 As Range
Set Zelle = Range("D22:D10133")
Set Target = Intersect(Target, Range("D22:D100133,F22:F100133"))
If Target Is Nothing Then
Cells(2, 16).Value = ""
Exit Sub
Else
For Each Zelle In Target
Cells(2, 16).Value = "Der Punkt wird automatisch gesetzt."
Next Zelle
End If
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "Infozelle" erstellen, Text variabel
23.11.2020 10:33:41
Matthias
Hallo,
Case ist gut dafür geeignet.
Hier ein Beispiel zum nachvollziehen:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 1 Then 'nur bei Klick in Zeile 1
Select Case Target.Column
Case Is = 1 'wenn angeklickte Spalte=1
MsgBox "eins"
Case Is = 2 'wenn angeklickte Spalte=2
MsgBox "zwei"
Case Is = 3 'wenn angeklickte Spalte=3
MsgBox "drei"
Case Else 'wenn angeklickte Spalte  1,2 oder 3
MsgBox "nicht eins, nicht zwei und nicht drei ;-)"
End Select
End If
End Sub
Gruß Matthias
Ohne mit Kommentaren zu arbeiten
23.11.2020 10:36:57
RPP63
Moin!
Ich sehe Deine Anforderung.
Dennoch würde ich die Bereiche markieren,
→ Daten, Datengültigkeit
→ Zulassen: (es geht wahrscheinlich um ein Datum?)
→ Eingabemeldung, EM anzeigen, wenn Zelle ausgewählt, "Der Punkt wird automatisch gesetzt."
Gruß Ralf
Anzeige
AW: Ohne mit Kommentaren zu arbeiten
23.11.2020 10:48:43
Danie
Hallo Ralf,
danke für deine Nachricht. Die EM hatte ich bisher aktiviert, allerdings bleibt das Kommentarfensterchen dann nicht an dem Platz, wo ich es gerne dauerhaft hätte.
Um ein Datum geht es hierbei nicht, sondern um eine Kombination aus Buchstaben-/Zahlenspalten und Punktspalten. Da kommt letzten Endes ein Schlüssel raus, beispielweise wie S15.1 oder M3.4.1.
Nun, aus dem obigen Grund komme ich leider mit den EMs nicht weiter.
Gruß
AW: "Infozelle" erstellen, Text variabel
23.11.2020 16:06:09
Daniel
HI
würde ich so lösen:
1. schreibe die Kommentartexte zu jeder Spalte in eigene Zeile, jeden Text in der Spalte, in der der Text erscheinen soll.
diese Texte kannst du ganz klein machen (Schriftgrad 2) oder die Zeile ganz ausblenden.
2. dann reicht dir im Prinzip folgender Code im Selection-Change-Event.
Dim Z as Long
Z = 1 'Zeilennummer, in der die Kommentare hinterlegt sind
Application.EnableEvents = False
Cells(2, 16).Clearcontents
if Target.Columns.Count = 1 then
if Target.Row >= 22 then
Cells(2, 16).Value = Cells(1, Target.Column).Value
end if
end if
Application.EnableEvents = True
die Kommentare kannst du dann einfach in der jeweiligen Zeile ändern, löschen oder Hinzufügen, ohne dass am Code was gemacht werden muss.
Gruß Daniel
Anzeige
AW: "Infozelle" erstellen, Text variabel
24.11.2020 08:24:38
Danie
Hallo zusammen,
ich habe mir durch euch ein bisschen Anregung geholt und bin nun zu folgendem Ergebnis gekommen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim punkt_1 As Range
Dim punkt_2 As Range
Dim name As Range
Set punkt_1 = Range("D21:D10133")
Set punkt_2 = Range("F21:F10133")
Set name = Range("I21:I10133")
'Infobox
'Bereiche für Infos definieren
Set punkt_1 = Range("D21:D10133")
Set punkt_2 = Range("F21:F10133")
Set name = Range("I21:I10133")
'Bereiche mit verschiedenen Texten versehen
If Not Intersect(ActiveCell, punkt_1) Is Nothing Then
'ausgewählt
Cells(2, 16).Value = "The dot is set automatically."
ElseIf Not Intersect(ActiveCell, punkt_2) Is Nothing Then
Cells(2, 16).Value = "The dot is set automatically."
ElseIf Not Intersect(ActiveCell, name) Is Nothing Then
Cells(2, 16).Value = "This name is necessary."
Else
Cells(2, 16).Value = ""     'nicht ausgewählt
End If
End Sub
Ist bestimmt nicht die beste Art, aber es funktioniert wunderbar.
Vielen Dank soweit!
Anzeige

156 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige