Formule Als() in Macro

Status
Niet open voor verdere reacties.
Nieuwe poging.
Code:
Sub hsv()
Dim cl As Range
With Sheets("Blad1")
For Each cl In .Range("A5:A" & .UsedRange.Rows.Count)
 If cl.Offset(, 5) = vbNullString Then
  cl.Offset(, 2) = cl.Offset(, 1)
Else
   cl.Offset(, 2).ClearContents
   End If
 Next
 End With
End Sub
 
Hallo Harry,

zo? :)

Code:
Sub hsv()
Dim cl As Range
With Sheets("Blad1")
For Each cl In .Range("A5:A" & .UsedRange.Rows.Count)
 If cl = "" Then
     cl.Offset(, 2).ClearContents
 Else
     cl.Offset(, 2) = cl.Offset(, 1)
   End If
 Next
 End With
End Sub


Grt,
Moché
 
Harry,
Bij deze wil ik je hartelijk bedanken.
Mijn vragen waren niet altijd duidelijk maar je blijft geduldig helpen.

Mijn laatste voorbeeld was ook niet hellemaal correct: in kolom 5 staan in mijn bestaand geen waarden. Dit was alleen om te laten zien dat kolom B formule bevat.
De echte formule is te lang en ingewikkeld om die in het voorbeeld te zetten.
Niet dat je het niet zou begrijpen :) maar omdat het van meer kolomen afhankelijk is.

Mijn aanpassing aan jou code is misschien niet elegant maar het werkt.

Nogmaals bedankt voor je hulp

Grt,
Moché
 
Hallo Moché,

Prima code.
Kan iets korter.
Code:
Sub hsv()
Dim cl As Range
With Sheets("Blad1")
For Each cl In .Range("A5:A" & .UsedRange.Rows.Count)
   cl.Offset(, 2) = IIf(cl = vbNullString, "", cl.Offset(, 1))
 Next
 End With
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan