Obtenga el número de celda haciendo doble clic en él y colóquelo en otra fórmula

Obtenga el número de celda haciendo doble clic en él y colóquelo en otra fórmula

Como parte de mi trabajo en TIC, necesitamos crear un juego de acorazados y una forma en la que estaba pensando en hacerlo era usando

=IF(ISNUMBER(SEARCH("*x*",C3)),"HIT","MISS")

para verificar si esa celda contiene x pero obviamente sería estática y siempre verifica C3. Necesito buscar C3:G8 pero si lo hago

=IF(ISNUMBER(SEARCH("*x*",C3:G8)),"HIT","MISS")

Buscará en todas esas celdas y todas deben contener una x, o no, para devolver HIT o MISS.

Estaba pensando que si haces doble clic en una celda, por ejemplo D4, tomará D4 y lo colocará en la fórmula casi como una fórmula dinámica. ¿Es eso siquiera posible?

¿Estoy abordando esto de manera incorrecta y, de ser así, cuál sería una mejor manera de abordarlo?

Gracias

Respuesta1

La "fórmula dinámica", como la describe, requeriría VBA. He incluido un método para comenzar: permite al usuario ingresar coordenadas y averiguar si tiene un Acierto o un Fallo.

ingrese la descripción de la imagen aquí

La fórmula que se utiliza en la celda de resultados es:

=IF(INDEX(C3:D5,MATCH(H3,B3:B5,0),MATCH(I3,C2:D2,0))="x","HIT","MISS")

Para hacerlo más legible (ya que es tarea...), estaría tentado a usar rangos con nombre y así:

=IF(INDEX(grid,MATCH(H3,y_axis,0),MATCH(I3,x_axis,0))="x","HIT","MISS")

.

ACTUALIZAR

Aquí hay otro método simple similar, que utiliza formato condicional para mostrar aciertos y errores:

ingrese la descripción de la imagen aquí

El formato condicional utiliza fórmulas simples como las siguientes:

=AND(B3="x",H3="x")  //for a hit

=AND(B3="x",H3="")   //for a miss

La fórmula para los aciertos restantes es la siguiente:

=COUNTIF(H3:L16,"x")-SUMPRODUCT((H3:L16="x")*(B3:F16="x"))    

información relacionada