• 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 #VERW!

Dit topic is als opgelost gemarkeerd

Catrysse59

Gebruiker
Lid geworden
28 mrt 2014
Berichten
24
Dag allemaal . Ik heb een werkblad "test " aangemaakt waarvan volgende formule in "this workbook " staat .
Private Sub Workbook_Open()

Dim i As Long



Application.ScreenUpdating = False

' Verwijderen van rijen in het "test"-blad

With Sheets("test")

For i = .Range("A" & .Rows.Count).End(xlUp).Row To 1 Step -1

If .Cells(i, 1) < Date Then

.Cells(i, 1).EntireRow.Delete xlUp

End If

Next i

End With



Application.ScreenUpdating = True

End Sub


Wanneer de datum uit kolom a is verstreken met de huidige dan wordt de bijhorende rij verwijderd . Tot zo ver is alles ok . De cellen T1 en V1 zijn gekoppeld aan k2 en p2 , Dus t1 = cel k2 en v1 aan p2 . Het ligt in mijn bedoeling dat de cellen T1 en V2 de nieuwe waarden ( na uitvoering van de formule ) van de cel k2 en v2 krijgen en geen #VERW! melding . In bijlage vindt u een afbeelding die alles duidelijk zou kunnen maken . Kan er iemand me hierbij helpen aub . Dank bij voorbaat . mvg Dominiek
 

Bijlagen

  • help mij.jpg
    help mij.jpg
    110 KB · Weergaven: 16
Als je een rij verwijderd waar in andere cellen naar verwezen wordt dan wordt inderdaad de celverzijing vervangen door #VERW

Dit kun je ondervangen door in de macro ook de celverwijzingen in T1 en V1 opnieuw in de cel te zetten

zie onderstaande code.

Code:
rivate Sub Workbook_Open()

Dim i As Long
Application.ScreenUpdating = False

' Verwijderen van rijen in het "test"-blad
With Sheets("test")
   For i = .Range("A" & .Rows.Count).End(xlUp).Row To 1 Step -1
      If .Cells(i, 1) < Date Then
         .Cells(i, 1).EntireRow.Delete xlUp
      End If
   Next i
End With

Range("T1").FormulaR1C1 = "=R[2]C[11]"
Range("V1"),.FormulaR1C1 = "=R[2]C[16]"

Application.ScreenUpdating = True

End Sub

in die code staat R[2] voor rij 2 en C[11] voor kolom K en C[16] voor kolom P
 
Laatst bewerkt:
Beste Roeljongman . bedankt voor uw reactie . Ik heb uw formule in this workbook geplaatst maar kreeg eerst een foutmelding inzake
Range("T1").FormulaR1C1 = "=R[2]C[11]"
Range("V1"),.FormulaR1C1 = "=R[2]C[16]" waar een komma teveel staat ( denk ik ) . Na dit klein euvel heb ik dit getest . De cellen t1 en v1 hebben nu een nul waarde en zouden identiek zijn als AE3 en AL3 wat in feite niet de bedoeling is maar de nieuwe gegevens uit k2 en p 2 die na het verwijderen van een verstreken data in T1 en V1 zouden moeten overnemen . In bijlage stuur ik een tweetal screenshots om alles duidelijk te maken . mvg Dominiek
 

Bijlagen

  • Dia1.JPG
    Dia1.JPG
    97,5 KB · Weergaven: 8
  • Dia2.JPG
    Dia2.JPG
    97,6 KB · Weergaven: 9
Code:
Private Sub Workbook_Open()

Dim i As Long
Application.ScreenUpdating = False

' Verwijderen van rijen in het "test"-blad
With Sheets("test")
   For i = .Range("A" & .Rows.Count).End(xlUp).Row To 1 Step -1
      If .Cells(i, 1) < Date Then
         .Cells(i, 1).EntireRow.Delete xlUp
      End If
   Next i
   .Range("T1").FormulaR1C1 = "=R[1]C[-9]"
   .Range("V1").FormulaR1C1 = "=R[1]C[-6]"
End With



Application.ScreenUpdating = True

End Sub
 
Beste AD1957 en Roeljongman . De formule van AD 1957 is ok . Aan beiden van jullie bedankt voor alle moeite en voor het oplossen van dit probleem . Groeten , Dominiek
 

Catrysse59 Wees slim en plaats volgende keer een excel voorbeeldje. Foto's en dia's zijn voor een ander forum.

 
Terug
Bovenaan Onderaan