• 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.

Cellen leeg maken

Status
Niet open voor verdere reacties.

H.Weenink

Gebruiker
Lid geworden
6 okt 2000
Berichten
159
Ik ben een leek in fomules in een excel sheet. en daarom heb ik de volgende vraag

Hoe kan ik dmv een formule een aantal cellen leegmaken
stel in cel A5 heb ik een fomule staan voor vert.zoeken b.v [=ALS(C60=0;" ";(VERT.ZOEKEN(C60;'Algemene uren'!$A:$B;2;)))] wanneer ik dan hier door het zoeken geen waarde vind komt er automatisch (in cel A5)een 0 te staan, vervolgens wil ik wanneer er in de cel A5 een 0 komt staan de gegevens uit de cellenblok C5:H8 wissen

dus bv als cel A5 = 0 dan wis gegevens uit cel c5 t/m h8

Wie kan mij hiermee helpen en alvast bedankt
 
Ik weet niet precies wat je wilt.
Wat staat er in die cellen E5 t/m H5?
Wil je het echt wissen of moet het niet zichtbaar zijn.

Als het niet zichtbaar mag zijn kan je proberen:

1) Met voorwaardelijke opmaak
vb. Als C5 = 0 dan lettertype WIT.

2) Met als functie in de cel
vb. ALS(C5<>0;"Jouw tekst";"")

Als het echt gewist mag worden dan zou je het in VBA moeten schrijven. Je moet dan wel weten wanneer de inhoud gewist moet worden. Stel je bent in cel E5 wat aan het invoeren en C5 is al nul dan ben je gelijk je invoer weer kwijt. Het is dus belangrijk precies op te schrijven wat je wilt dat er gebeurt.
 
Beste Eugene, bedankt alvast voor je reactie Je vroeg of de cellen daadwerkelijk gewist moeten worden en dat is ook zo want de getallen in de cellen maken onderdeel uit van een berekening , die dan ookecht gewist moet worden als cel C5= 0
en als in C5 nul moet ik ook geen getal in kunnen vullen.
De volgende vraag is hoe schrijf ik zoiets in VBA (als leek)

vr gr
 
Hoi leek,

De onderstaande programmacode in VBA zetten. Als op wat voor manier dan ook in C5 0 komt te staan, dan worden E5:K5 gewist.

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("C5") = 0 And Not IsEmpty(Range("C5")) Then Range("E5:K5").ClearContents
End Sub

Je komt in de programmacode van een werkblad door met de rechtermuisknop op het tabje van het werkblad te klikken, vervolgens programmacode weergeven kiezen en de bovenstaande code hier naartoe kopieren (kopieren van dit forum en plakken).

Overigens als in C5 een 0 staat kan je in het bereik wel gewtallen invoeren maar die worden ogenblikkelijk weer gewist.

Jeroen
 
Hallo Jeroen, je oplossing heeft mij een heel stuk in de goede richting geholpen alleen de cellen worden niet gewist, ze worden niet eerder gewist dan dat ik er een getal inzet, en ik had graag dat ze onmiddelijk gewist werden,heb je hier ook nog een oplossing voor?

bvd "leek"
 
Hoi Weenink,

Ik was een beetje misleid door Eugene, C5 moet natuurlijk A5 zijn en E5:K5 moet natuurlijk C5:H8 zijn. Ik hoop dat je dat zelf gezien had.

Het is toch de bedoeling dat alleen als A5 de waarde 0 bevat dat C5:H8 gewist worden? of ook als C5 leeg is of tekst bevat?

In het laatste geval:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("A5") = 0 Or Not IsNumeric(range("A5"))Then Range("C5:H8").ClearContents
End Sub

Het maakt niet uit waardoor A5 verandert, zodra A5 verandert wordt het bereik gewist.

Jeroen
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan