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

code om functie te verwijderen

Status
Niet open voor verdere reacties.

rob91

Gebruiker
Lid geworden
10 okt 2008
Berichten
198
Hallo,

Ik haal celwaarden op via de functie vertikaal zoeken en nu zoek ik een stukje code die de waarde in de cel vastzet zodat deze niet meer wijzigt.

met andere woorden : de functie ''vert. zoeken' verwijderd zodra er een waarde in staat en die waarde in de cel dan laat staan.

rob
 
't Kan handmatig:
Selecteer de cel, F2, F9, enter.
Of:
Ctrl C, Bewerken - Plakken Speciaal > Waarden > OK.

Via VBA lijkt mij lastig, want de functie werkt zodra je 'm intikt / kopieert.

Richard
 
In VBA als het over cel F3 gaat:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  With Target
    If .Address="$F$3" Then .Value=.Value
  End With
End Sub
 
heren,

Handmatig wordt niets want de waarden komen van een ander blad.
Het stukje code doet het niet.

Ik heb een stukje code; alleen is deze niet helemaal goed.
Kan iemand kijken wat er mis is?

Sub Macro1()
Dim r As Range
For Each r In Range("B2:C366")
If r.Value >= 1 Then
r.Value = r.Value
End If
Next
End Sub
 
Wat gaat er niet goed met de code?

Met vriendelijke groet,


Roncancio
 
In VBA als het over cel F3 gaat:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  With Target
    If .Address="$F$3" Then .Value=.Value
  End With
End Sub

Kijk goed uit met zulke codes, voer dit maar eens uit in een leeg bestandje met het Immediate Window open en sla alle andere bestanden eerst op:

Code:
Dim i As Long

Private Sub Worksheet_Change(ByVal Target As Range)
  With Target
    If .Address = "$F$3" Then i = i + 1: Debug.Print i: .Value = .Value
  End With
  
End Sub

Wigi
 
zonder te testen zou ik zeggen dat er een Application.EnableEvents = False vooraf moet gaan....

Groet, Leo
 
Sub Macro1()
Dim r As Range
For Each r In Range("B2:C366")
If r.Value >= 1 Then
r.Value = r.Value
End If
Next
End Sub


deze code werkt niet en geeft een fout in de 3e regel : If r.value >= 1 then

melding is: r.value = fout 2042

wat kan er mis zijn?:(
 
fout 2042 verschijnt als er iets niet gevonden kan worden.

Met vriendelijke groet,


Roncancio
 
Het punt is dat vert.zoeken een foutmelding geeft omdat de datums niet gevonden kunnen worden.
Fout 2042 is een equivalent van #N/B.
Als je een ALS-functie in de formule gebruikt dan kan je de foutmelding omzeilen.

Met vriendelijke groet,


Roncancio
 
Roncancio,

Dat was inderdaad het probleem; nu met de als-functie werkt het.
Alleen heb ik mij ondertussen bedacht, dat als er later nog een aantalwijziging aangebracht wordt deze dus nooit meer gekopieerd wordt. Dus weet ik niet of ik de gegevens wel op deze manier moet overnemen.

Maar goed,mijn vraag is opgelost.
bedankt voor de tips.:thumb:

Rob
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan