1)
'a1 används inte här eller?
sub test()
dim r as range
set r=range("d2")
do until r.value=""
set r=r.offset(1,0)
if r.row>8 then msgbox "hittade ingen ledig cell...", vbcritical: exit sub
loop
r.value=range("a2").value
end sub
2)
'förstår inte riktigt vad du menar med uppfyller villkoret, men i detta exempel är det om B2=1
sub test2()
dim r as range
if(range("b2").value=1) then
set r=range("d2")
else
set r=range("e2")
endif
do until r.value=""
set r=r.offset(1,0)
if r.row>8 then msgbox "hittade ingen ledig cell...", vbcritical: exit sub
loop
end sub
3)
förstår inte alls vad du menar här faktiskt....
sorry
lycka till Fritzzzzzzz