Se podría usar la función Shell de VBA para ejecutar el ping, pero no creo que te sirva de mucho porque cuando termine se cerrará la ventana de DOS. El código podría ser:
Sub Ping()
Dim varRetorno As Variant
varRetorno = Shell("ping " & [hoja1!B3].Value, vbNormalFocus) 'Cambiar hoja1 por el nombre de la hoja
End Sub
También sería posible procesar un rango de celdas, por ejemplo en Hoja1 desde A1 hasta la primera celda vacía de la columna A, pero en este caso el problema sería peor porque el código iría abriendo tantas ventanas como celdas con datos y las iría cerrando sin más. El código podría ser:
Sub Ping2()
Dim varRetorno As Variant, n As Long
For n = 1 To [Hoja1!a65536].End(xlUp).Row
varRetorno = Shell("ping " & [Hoja1].Cells(1, n).Value, vbNormalFocus)
Next n
End Sub
Para terminar de complicar las cosas, la función Shell trabaja de forma "asíncrona", de modo que no "espera" a que se ejecute la instrucción DOS sino que sigue alegremente con el resto del código (si lo hay).
Yo tuve que hacer hace tiempo un libro que tenía que ejecutar varias llamadas a una instrucción DOS determinada y volcar sus resultados en una hoja.
La instrucción no era ping, pero he intentado adaptar el libro para que procese las IPs o nombre de sitios web que haya en la columna A de Hoja1 y ponga el resultado en la celda contigua. Esto se consigue porque cada ping vuelca su resultado a un fichero de texto llamado c:\ping.txt y luego el código lo lee. Tal como va el código, pone todo seguido en la celda pero se podría "parsear".
El código es un pequeño lío porque, como no es posible usar SHELL, hay que usar varias llamadas a la API de windows y una función (llamada ExecCmd) que espera a que termine cada ejecución a CMD.EXE antes de ejecutar la siguiente (el código está sacado de Microsoft, la página figura al principio del código).
He limitado el número de peticiones de eco del ping a una para ganar tiempo de ejecución, pero aún así se producen retrasos si el sitio web no responde al ping.
El libro está en
http://www.jrgc.es/ejemplos/Llamadas_a_CMD_EXE.xls y el sub que hay que ejecutar se llama LanzarPings