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

Opgelost VBA script automatisch wissen bepaalde cellen

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

Cartucci

Gebruiker
Lid geworden
18 aug 2018
Berichten
72
Besten,

In een productieplanning wil ik graag gegevens in bepaalde cellen, welke voor de datum van vandaag liggen, automatisch laten wissen m.b.v. een VB script.

Zie bijgaand voorbeeldbestand.

In cel A1 staat de datum van vandaag.

In de cellen D1 t/m AH1 staan de data van de huidige maand oktober.

Nu zou ik graag zien dat bij een druk op een “virtuele knop” een macro gestart wordt welke de gegevens in de cellen D2 t/m AH3 verwijderd in de kolommen welke voor de datum van vandaag vallen. Die knop maken is geen probleem en een macro koppelen ook niet.

Maar..., via zoeken op internet kan ik geen script vinden welke mij voldoende handvatten geeft om met mijn kennis van VB een werkend script te maken.

Kan iemand mij hierin van een werkend script voorzien?
 

Bijlagen

zo?

Code:
Sub SjonR()
Rows(1).Find(Date).Offset(1).Resize(2).ClearContents
End Sub
 
Bedankt voor je snelle reactie!

Hij wist op dit script alleen L2 en L3.

Hij zou D2 t/m K3 moeten wissen. Zie bijgaande screen shot.
 

Bijlagen

  • 2019-10-09_1542.png
    2019-10-09_1542.png
    7,1 KB · Weergaven: 25
verkeerd begrepen :)

Probeer deze eens:
Code:
Cells(2, 4).Resize(2, Rows(1).Find(Date).Column - 4).ClearContents
 
Hij doet het. Mijn plandocument is aanzienlijk groter dan dit voorbeeld, ik ga nog even kijken of ik het aan kan passen naar een groter bereik of dat ik je hulp nog een keer nodig heb.

Hoe dan ook: (Alvast) hartelijk dank voor de hulp.
 
2e voorbeeld

In het 1e voorbeeld werkt het maar ik krijg het niet werkend in het grotere bestand, ik doorzie de celverwijzingen onvoldoende om het werkend te krijgen in dit grotere geheel. Misschien in volgende info nog van nut m.b.t. het grotere bestand. Zie bijlage voor de werkelijke situatie in voorbeeld 2.

- De datum van vandaag staat in cel A4

- In rij O5 tot en met JP5 staan de datums opvolgend weergegeven van 2019 (excl. weekenden)

- In bereik O8 tot en met JP157 staan getallen (in het voorbeeld het getal 100). Wanneer de datum in rij 5 kleiner is dan de datum van vandaag, moeten alle gegevens in de kolommen onder deze bewuste datums verwijderd worden, te beginnen bij rij 8 eindigend in rij 157.

Alle kolommen waarvan de datums in rij 5 gelijk aan of groter zijn dan de datum van vandaag, moeten intact blijven.
 

Bijlagen

Daar is 'Find' niet geschikt voor.

Met foutafhandeling indien de datum van vandaag niet voorkomt op rij 5.
Code:
Sub hsv()
Dim k As Long
  k = Application.Match(CLng(Date), Rows(5), 0)
  If IsNumeric(k) Then Cells(8, 15).Resize(152, k - 14).ClearContents
End Sub

Misschien moet je van 14 even 15 maken.
 
Laatst bewerkt:
datums onder kolom vandaag worden ook gewist

Bedankt Harry, maar hij wist nu ook de gegevens onder de datum van vandaag. Die moeten (nog) blijven staan. Ik heb al e.e.a. geprobeerd maar krijg het niet voor elkaar

Update: lijkt toch gelukt. Negeer bovenstaand maar.
 
Laatst bewerkt:
Lees mijn reactie eens volledig.

edit: ik zie dat het gelukt is.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan