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

VBA vraag

  • Onderwerp starter Onderwerp starter Hylas
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Hylas

Gebruiker
Lid geworden
5 mrt 2012
Berichten
150
Beste leden,

ik wil met VBA iets automatisch laten invullen.
Het gaat er om als in cel B1 iets komt te staan bijv een datum dat dan de cellen B8 t/m B120 en C8 t/m C120 gevuld worden met een bepaalde tekst.

is dat mogelijk ?

Alvast mijn dank

Gr Ton
 

Bijlagen

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$B$1" And Target.value <> "" Then
      Range("B9:B120") = "ja"
      Range("C9:C120") = "geen"
  End If
End Sub

Ik weet wat je volgende vraag zal zijn, maar: probeer het eerst zelf uit te zoeken.
 
Laatst bewerkt:
Bedankt

Denk dat ik het wat jij aangeeft wel op kan lossen maar hij geeft wel een foutmelding
echter hij geeft wel een foutmelding in deze regel
Code:
If Target.Address = "$B$1" And Target <> "" Then
 
en heb je de code wel in een (Selection)Change_event staan of heb je deze ergens ander ondergebracht? graag op zijn minst de volledige code plaatsen of het bestand waarin het fout gaat.
 
Foutmelding code 13

zie bijlage van de melding

FOUT 13.JPG
FOUT OPSPORING.JPG

heb de code er zo in gezet
 
zo?

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Address = "$B$1" And Target <> "" Then
      Application.EnableEvents = False
      Range("B9:B120") = "ja"
      Range("C9:C120") = "geen"
      Application.EnableEvents = True
  End If

End Sub
 
Bedankt

Stom,

ik zag het nu net pas, hij stond niet in de worksheet ( hij stond op algemeen )

Nu kan ik lekker verder stoeien :thumb::thumb::thumb::thumb:

Bedankt man
 
Code:
 Target.Offset(8).Resize(112, 2) = Array("ja", "geen")
 
code

HSV
Ik snap de code niet.

kan je hem misschien verduidelijken of misschien in z'n geheel neerzetten

Gr Ton
 
Natuurlijk.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
  If Target.Address = "$B$1" And Target <> "" Then Target.Offset(8).Resize(112, 2) = Array("ja", "geen")
 Application.EnableEvents = True
End Sub
 
Code

Beste,

ik begin nu de code te snappen, nu moet ik nog even door want hij vult alle regels en hij moet er een paar overslaan, en als je bijvoorbeeld alles leeg wil maken?

Begin het steeds leuker te vinden :thumb:

Groet,

Ton
 
Waarschijnlijk snap je deze dan ook wel.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address = "$B$1" Then
   Application.EnableEvents = False
    If Target <> "" Then
     Target.Offset(7).Resize(112, 2) = Array("ja", "geen")
     Range("b11:c11,b20:c20,b22:c22,b26:c26,b31:c31,b43:c43,b73:c73,b83:c83,b94:c94,b107:c107,b112:c112,b117:c117").ClearContents
    Else
     Target.Offset(7).Resize(112, 2).ClearContents
    End If
   Application.EnableEvents = True
 End If
End Sub

Of:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address = "$B$1" Then
   Application.EnableEvents = False
     Target.Offset(7).Resize(112, 2) = IIf(Target <> "", Array("ja", "geen"), "")
     Range("b11:c11,b20:c20,b22:c22,b26:c26,b31:c31,b43:c43,b73:c73,b83:c83,b94:c94,b107:c107,b112:c112,b117:c117").ClearContents
   Application.EnableEvents = True
 End If
End Sub
 
Mooi man

HSV,

heel mooi, nu is het echt leuk, hier kan ik heel veel mee en met de code is het nu veel en veel duidelijker.

Heel erg bedankt man, je hebt me heel goed geholpen

Thanks

Gr Ton
 
Als je in alle cellen die niet gevuld moeten worden eerst een spatie zet; gebruik dan daarna:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address = "$B$1" Then
   Application.EnableEvents = False
     Target.Offset(7).Resize(112, 2).SpecialCells(4) = IIf(Target <> "", Array("ja", "geen"), "")
   Application.EnableEvents = True
 End If
End Sub
 
Laatst bewerkt:
Wat is een 'aptie' ?
 
@HSV

Ha gelukkig weet jij ook niet alles :D
Wellicht biedt de aangepaste tekst in #14 uitkomst ?
Het lijkt me wel een aardige naam voor een of ander exotisch teken.
 
Uiteraard had ik wel in de gaten dat het een spatie moest zijn, maar ik wilde je laten weten waarom dat in mijn procedure niet werkt.

De spatie is geen lege cel: dus geen 'specialcells(4)'.
Als alles is gevuld met ja en nee en een spatie in de overige cellen..

If target is leeg... maak alle specialcells(4) leeg.

Waar zijn de lege cellen?
 
Die suggestie was ook niet bedoeld voor jouw code, maar voor de codesuggestie onder die zin.
 
Met jouw code in mijn procedure wel te verstaan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan