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

Datum wissen als cel wijzigd

Status
Niet open voor verdere reacties.

Lampie173

Gebruiker
Lid geworden
21 jan 2012
Berichten
154
Goedenavond,

In een werkblad wil ik het volgende kan nu doen:

In Kolom 1, cellen A5 t/m A7 wil bedragen invoeren, standaardnotatie is 'Financieel'
als een bedrag in bovenstaand kolom wordt ingevoerd komt in de volgende kolom (Bereik B5:B7) de datum van die dag.
Dat geldt dan ook voor de volgende kolommen (voorbeeldbestand)

Dit gebeurt volgens de Worksheet Change_Event die in het werkblad staat.

Mijn eerste vraag is, kan de huidige code korter, want nu zijn alle bereiken apart opgesomd in macro

De 2e vraag is: Is het mogelijk om de cel(len) waar de datum in komt staan leeg te maken als ik cel waar het bedrag instaat weer op nul zet.

bv.
A5, € 15 , B5 11-9-2020
na wijziging:
A5 € 0 , B5 wordt leeg weergegeven.

bijlage voorbeeldbestand heb ik toegevoegd.

Groet,

Toon
 

Bijlagen

  • Voorbeeldbestand.xlsm
    15,5 KB · Weergaven: 38
In basis is dan dit voldoende.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column Mod 2 = 1 And Target.Count = 1 Then Target.Offset(, 1) = IIf(Target.Value = 0, "", Date)
End Sub
 
Morge,

VenA,
Dank je wel.

Ik heb je code geprobeerd te ontcijferen, wat deels gelukt is, ik weet nu wat de functie van MOD, ook heb ik geprobeerd om de code alleen voor het bereik (A5:X7) te laten gelden.

Ik probeerde dat met Range ipv. Column te doen, maar daar komt alleen maar een foutmelding op terug.


Groet,

Toon
 
Wel zo handig als je laat zien wat je geprobeerd hebt.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Target, Range("A5:X7")) Is Nothing Then
    If Target.Column Mod 2 = 1 And Target.Count = 1 Then Target.Offset(, 1) = IIf(Target.Value = 0, "", Date)
  End If
End Sub
 
Jouw code:

Code:
If Target.Column Mod 2 = 1 And Target.Count = 1 Then Target.Offset(, 1) = IIf(Target.Value = 0, "", Date)

die ik probeerde te laten gelden voor het bereik met het volgende probeersel:

Code:
If Target.Range("A5:A7") Mod 2 = 1 And Target.Count = 1 Then Target.Offset(, 1) = IIf(Target.Value = 0, "", Date)

Toen was ik er nog niet achter wat de functie van Mod was.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan