gracias malenko por la idea
lo e solucionado de esta forma,por si a alguien le sirve
Código vb:
Ver originalWhile p = 0
Do
a = 1 + (Rnd() * b)
Loop While a >= b
For Each datos As DataRow In imagentabla.Rows
If (datos("id").ToString) = a And datos("preguntada").ToString = False Then
Button9.Text = datos("tema").ToString
p = 1
End If
Next
End While