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

Formule plaatsen bij vullen van cel (VBA)

Status
Niet open voor verdere reacties.

skystormer

Gebruiker
Lid geworden
8 mrt 2011
Berichten
194
Beste,

mogelijk een simpele voor diegene met VBA kennis, maar voor een leek niet echt.
Ik wil als ik in kolom A een waarde invoer, dat er een formule geplaatst wordt (of resultaat) in kolom B.
De Formule is :

Code:
=VERT.ZOEKEN(A14;Artikelen!H:I;2;0)
Waarbij ik vanaf cel A14 (en verder omlaag) een waarde invoer en in kolom B een gegeven wordt opgehaald in een ander tabblad.

Nu heb ik.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
    If .Column <> 1 And .Column <> 13 Then Exit Sub
        Application.EnableEvents = False
            If .Column = 1 And .Count = 1 Then .Offset(, 3).Resize(, 1) = (Now)
            If .Column = 13 And .Count = 1 Then
            End If
        Application.EnableEvents = True
        
End With
End Sub

Die er voor zorgt dat de huidige datum wordt geplaatst in kolom D.
Iemand een idee hoe dit voor elkaar te krijgen.

Formule doortrekken is helaas geen optie.
Het blad is beveiligd waarbij de formules verborgen worden. (en er worden vaak rijen ingevoegd)
Verder indien mogelijk zou ik willen dat als een waarde wordt ingevoerd in kolom A dat alle cellen van kolom A t/m G een dikke rand krijgen.

Bijgevoegd een klein voorbeeldbestand.

Bekijk bijlage Test.xlsm

Verder als bonus.
Zou ik deze willen uitbreiden dat in kolom H een extra gegeven komt te staan, namelijk de datum uit kolom D van de vorige keer dat de waarde in kolom A voorkwam in dit overzicht.

Als iemand iets weet, graag dan :)

Dank alvast.

Rob
 
Laatst bewerkt:
Zet voor je formule - =ALS(A14="";"";VERT.Z...........))
Dan blijft de cel leeg als er in A14 niets staat.
 
De formule mag in zijn geheelheid niet zichtbaar zijn. (dus ook niet als uitkomst "")
Dit krijg ik alleen voor elkaar door het blad te beveiligen.
Echter andere mensen moeten gegevens invullen in deze. Waarbij ook vaak rijen ingevoegd worden. Met invoegen wordt een formule niet meegenomen. Hiervoor zou ik dan telkens de beveiliging tijdelijk bij ze moeten opheffen.
 
Laatst bewerkt:
Maak gebruik van een tabel. Zowel de opmaak als de formules worden meegenomen. Wat je met de geplaatste code wil begrijp ik niet.
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Columns(1)) Is Nothing Then
   Set c = Sheets("artikelen").Columns(8).Find(Target.Value, , xlValues, xlWhole)
 If Not c Is Nothing Then Target.Offset(, 1).Resize(, 3) = Array(c.Offset(, 1), "", Date)
End If
End Sub
 
Zal in het vervolg gelijk naar VBA gaan.
Maar dat is em helemaal HSM.
Ik was aan het proberen met vlookup echter zo leer ik weer wat.
Ben al gelijk me eigen draai er op aan het geven. En kijken wat ik nog meer kan toevoegen voor eigen oefening.

Opgelost.

En bedankt allen.
 
Heb er overigens gelijk een combi van gemaakt.
Tabel + de macro.
Echter vroeg mij af of de foutmelding weg te krijgen is op het moment je een regel verwijdert? (Fout 1004)
(met de code van HSV)
 
De foutmelding kan je voorkomen door deze regel aan te passen
Code:
If Not Intersect(Target, Columns(1)) Is Nothing Then

in
Code:
If Not Intersect(Target, Columns(1)) Is Nothing and target.count = 1 Then
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan