• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Instructie tekst in cel

Status
Niet open voor verdere reacties.

BramB2

Gebruiker
Lid geworden
12 feb 2009
Berichten
163
Beste forum-leden,

Is het mogelijk om een instructie tekst te schrijven in een cel, en wanneer je er dan op klikt deze verdwijnt en je een waarde in kan voeren?
Voorbeeld:
In A1 moet je de gewerkte uren invullen, hier moet dat staan: Vul hier uw gewerkte uren in.
Wanneer je dan op A1 klikt, of begint te tikken, verdwijnt deze tekst en kun je de gewerkte uren invullen. Is dit mogelijk?

Groeten,
Bram
 
Beste BramB2 ;)

Via rechtermuis op je cel klikken en opmerking invoegen klikken.
Zet hier dan een tekst in en enter.
Dan kan je terug via rechtermuisklik op de cel de opmerking zichtbaar, verbergen of verwijderen doen.

Groetjes Danny. :thumb:
 
Beste danny!:thumb:
Bedankt voor je reactie, maar dit is niet precies wat ik bedoel. De tekst moet echt in de cel zelf staan. Je moet je voorstellen dat ik dit maak voor iemand die voor het eerst met excel werkt, dus van zo'n opmerking zou/hij al in paniek kunnen raken:p

Bram
 
Beste BramB2 ;)

Je moet je voorstellen dat ik dit maak voor iemand die voor het eerst met excel werkt, dus van zo'n opmerking zou/hij al in paniek kunnen raken:p

Ik zou eerder in paniek geraken als er al iets in de cel staat.

Groetjes Danny. :thumb:
 
Hoi Bram,

Leuk speelgoed VBA:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Interior.ColorIndex = 6 Then Target.Interior.ColorIndex = xlNone: Target.ClearContents
End Sub

Een fel geel gekleurde cel wordt nu geleegd zodra de cel geactiveerd wordt.

De juiste achtergrondkleur (ik kan mij voorstellen dat fel geel niet favouriet is) krijg je door de kleur op te nemen met de Macro-recorder:
Extra -> Macro -> Nieuwe macro opnemen
De cel de gewenste kleur geven, macro-recorder sluiten (blokje).
Extra -> Macro -> Macro's -> juiste macro selecteren en kiezen voor bewerken.
Het gewenste nummer staat bij ColorIndex

De code plaats je door rechtermuisknop -> Programmacode weergeven
Juiste nummer bij colorindex zetten

Jeroen
 
Om het je makkelijk te maken

Mvg

Rudi
 

Bijlagen

Beste BramB2 ;)



Ik zou eerder in paniek geraken als er al iets in de cel staat.

Groetjes Danny. :thumb:

Jaa maar dat ben jij he!:p

Bedankt Jeroen en Rudi, maar ik snap jullie idee eigenlijk niet zo. Jullie willen een tekst aan een bepaalde kleur cel hangen? Ik denk niet dat dat is wat ik bedoel.
Wat ik op het forum tegen kwam is de functie bij celeigenschappen: aangepast: @ "tekst"
Opzich is dit wel handig, alleen deze tekst moet er dan alleen staan als er geen getal is ingevoerd, en verdwijnen als iemand wat invoert. (zie bijgevoegd bestand als vb)
Allen al hartelijk bedankt!

Gegroet.
 

Bijlagen

Bram,

Mijn idee achter een gekleurde achtergrond is dat degene die iets moet invullen weet waar die wat moet invullen. Zodra alle gele velden (of andere kleur) weg zijn dan zijn alle stappen doorlopen.

Voor de code die erachter zit is het ook makkelijk omdat die dus weet wanneer de code moet werken (bij een gekleurde cel). Doe ik dat niet dan moet ik alle cellen apart gaan benoemen met het risico dat iemand een rij toevoegd en mijn code in de war is.

In jouw voorbeeld kun je kiezen voor een witte achtergrond (colorindex=2) en deze laten verdwijnen (blijft wit)

Celeigenschappen aanpassen betekent dat standaard een opmaak gekozen wordt, '5,3 km' gedraagt zich als het getal '5,26' in berekeningen omdat het een getal blijft. Als de cel leeg is blijft er echter wel 'km' staan.

Een iets betere oplossing is denk ik:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Interior.ColorIndex = 6 Then Target.Interior.ColorIndex = xlNone
End Sub

Deze code laat de gekleurde cel in tact totdat er een nieuwe waarde ingevuld is.

Gr. Jeroen
 
Laatst bewerkt:
Jeroen bedankt voor je reactie! Ik vind het wel een goed idee, ik kijk het even aan of het werkt en of het idee door de grote baas:evil: goedgekeurd word:) Het enige wat ik er op tegen heb is dat niet alle vakjes ingevuld hoeven te worden, en het hier wel geel blijft..

Groeten en bedankt!
 
Wellicht heb je hier wat aan.
In bijgevoegd bestand zit in cel F10 de melding dat daar wat ingevuld moet worden.

Zodra je de tekst weghaalt zonder dat je iets invult, dan komt de tekst weer terug.
Vul je iets in, dan blijft de ingevulde tekst staan.

Met vriendelijke groet,


Roncancio
 

Bijlagen

Beste Ronancio,

Dat is precies wat ik bedoelde!:thumb: Heel erg bedankt!

Groeten,
Bram
 
Toch nog even een vraag,

Ik wil dat idee in meerdere cellen gebruiken. Dus ik heb de code gekopieerd en cellen aangepast, maar nu geeft hij steeds de foutmelding: Er is een dubbelzinnige naam gevonden: Woksheet_Selection Change.
Dus mijn gezonde verstand zegt dat ik twee keer die naam gebruik en dat niet kan, maar hoe kan het wel?

Alvast bedankt heren! :thumb:
 
Toch nog even een vraag,

Ik wil dat idee in meerdere cellen gebruiken. Dus ik heb de code gekopieerd en cellen aangepast, maar nu geeft hij steeds de foutmelding: Er is een dubbelzinnige naam gevonden: Woksheet_Selection Change.
Dus mijn gezonde verstand zegt dat ik twee keer die naam gebruik en dat niet kan, maar hoe kan het wel?

Alvast bedankt heren! :thumb:

Worksheet_Selection Change is een Event dat aangeroepen wordt als een wijziging in het werkblad plaatsvindt. Je kunt geen meerdere change events in 1 werkblad hebben.
In het oorspronkelijke bestand gaat het om 1 cel. Wil je de code voor meerdere cellen gebruiken dan kan je het beste gebruik maken van een Range.
Dit is eenvoudig aan te passen maar het zou handig zijn als je aan kan geven om welke cellen het gaat.

Met vriendelijke groet,


Roncancio
 
Dit is eenvoudig aan te passen maar het zou handig zijn als je aan kan geven om welke cellen het gaat.

Dat zou ik in principe wel kunnen, maar omdat ik het denk ik ook nog in andere sheets wil gebruiken is het mischien handiger als je kunt zeggen hoe ik dit zelf aan kan passen. Kun je dit mischien verhelderen of is dat erg veel werkt?

Edit: mischien door die change event ook te beperken tot de cellen waar het om draait?

groeten Bram

ps: bedankt voor je snelle reactie!
 
Laatst bewerkt:
Edit: mischien door die change event ook te beperken tot de cellen waar het om draait?

Dat is ook de bedoeling.:)
Met onderstaande code gaat het om het bereik F10:J20.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F10:J20")) Is Nothing Then
    If Len(Target.Value) = 0 Then Target.Value = "Vul hier wat in."
End If

End Sub
Met vriendelijke groet,


Roncancio
 
Lijkt uitstekend te werken:)
Klein vraagje nog: is het mogelijk om de opmaak van die tekst aan te passen? Ik zou graag het woord: "hier" blauw maken en onderstrepen. Kan dit relatief eenvoudig?

Groeten!!
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F10:J20")) Is Nothing Then
    If Len(Target.Value) = 0 Then
        Target.Value = "Vul hier wat in."
        Target.Characters(5, 4).Font.Color = vbBlue
        Target.Characters(5, 4).Font.Underline = True
    End If
End If

End Sub

Met vriendelijke groet,


Roncancio
 
Hm ik loop nu toch tegen een probleem aan:
In die vorige code van je had ik de cel aangepast, maar nu ik die code nog een keer wil gebruiken voor een andere cel krijg ik dezelfde foutmelding.
Als ik de cel op F10:J20 laat, gebeurt er praktisch niks?

Dus stel ik wil een tekst in de cellen: D15 en D20 en D25 en D27, hoe doe ik dit? (de tekst moet verschillend zijn per cel..)

Bedankt voor de moeite tot nu toe!
 
Laatst bewerkt:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D15,D20,D25,D27")) Is Nothing Then
    If Len(Target.Value) = 0 Then
        Target.Value = "Vul hier wat in."
        Target.Characters(5, 4).Font.Color = vbBlue
        Target.Characters(5, 4).Font.Underline = True
    End If
End If

End Sub

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan