Clever-Excel-Forum

Normale Version: Text in Zelle die beim anklicken der Zelle verschwindet
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich suche nach der Möglichkeit in eine Zelle einen Text ("Name") zu schreiben das beim anklicken dann verschwindet. So wie man es von z.B. Kontaktforumularen im Internet kennt. Ist so etwas möglich?
Viele Grüße,
Shaggy1982
Hallo,

mal ungetestet hier reingeschrieben (wenn sich dein Text zum Beispiel in der Zelle A1 befindet)

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Address(0,0) = "A1" Then Target.Value = ""
End Sub

Nachtrag: Wo Du den Code einfügen mußt, wird dir hier erklärt.
Hallo,

ohne VBA ginge es mit mit einer 1 Pixel breiten Spalte, in welcher der Text steht und in der Nachbarzelle erscheint, solange da nichts eingegeben wurde.

Gruß Uwe
Hallo,

und hier ein Beispiel, die die Zellen A!:A10 abdeckt:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   Dim i As Long
   Dim rngBereich As Range
   Set rngBereich = Range("A1:A10")
   If Not Intersect(Target, rngBereich) Is Nothing Then
      If Target.Text = "Enter Value" Then Target.ClearContents
   End If
   For i = 1 To 10
      If Cells(i, 1).Address <> Target.Address Then
         If Cells(i, 1) = "" Then Cells(i, 1) = "Enter Value"
      End If
   Next i
End Sub

In die Zellen kann Enter Value vorgetragen werden. Ansonsten macht es der Code, wenn sie leer sind.
Hi,

(08.12.2014, 20:30)atilla schrieb: [ -> ]und hier ein Beispiel, die die Zellen A!:A10 abdeckt:

ich wollte da andere Zellen verwenden und habe aus A1:A10 zum Test B2:B11 gemacht.

Leider wird immer noch der Bereich A1:A10 beschrieben.

Ich würde auch gerne verschiedene Zellen verwenden:
z.B. B2, B4, B8, C6, D2, also wild verteilt.

Wie geht denn das?
Hallo Ralf,

das könnte so gehen:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   Dim rngBereich As Range, rngZ As Range
   Set rngBereich = Range("B2, B4, B8, C6, D2")
   If Not Intersect(Target, rngBereich) Is Nothing Then
      If Target.Text = "Enter Value" Then Target.ClearContents
   End If
   For Each rngZ In rngBereich
      If rngZ.Address <> Target.Address Then
         If rngZ = "" Then rngZ = "Enter Value"
      End If
   Next rngZ
End Sub
Hi Atilla,

(09.12.2014, 09:30)atilla schrieb: [ -> ]das könnte so gehen:

ja, so geht's!