Click en dibujo pase de celda B1 a B2 de hoja1

Tengo una lista de números que va de la celda B1 a B10 en la hoja1. Quisiera una macro que al hacer click en un dibujo de flecha pase el valor de B1 a la celda D4 de la hoja llamada Principal. Al próximo click sea el valor de B2 y así hasta el último valor.

1 respuesta

Respuesta
1

¿Son 2 hojas diferentes?

¿Pasar el dato siempre a la celda D4?

Si son 2 hojas diferentes, cómo se llama cada hoja.

Ah ya vi. Se llaman hoja1 y Principal

Si, siempre a la celda D4

Prueba la siguiente:

Sub pasar_Valor()
'Por Dante Amor
  '
  Dim cel_destino As Range, rng_origen As Range, f As Range
  Dim ultima As String, valor As Variant
  '
  Set rng_origen = Sheets("hoja1").Range("B1:B10")    'rango origen
  Set cel_destino = Sheets("Principal").Range("D4")   'celda destino
  '
  ultima = rng_origen.Cells(rng_origen.Rows.Count, 1).Address
  If cel_destino.Value = "" Then
    'si la celda destino está vacía, entonces pone el primer valor
    valor = rng_origen.Cells(1).Value
  Else
    Set f = rng_origen.Find(cel_destino.Value, , xlValues, xlWhole, , , False)
    If f Is Nothing Then
      'si el dato de la celda destino no existe en B1:B10, entonces pone el primer valor
      valor = rng_origen.Cells(1).Value
    Else
      If f.Address = ultima Then
        'si el dato encontrado es el último de rango, entonces pone el primer valor
        valor = rng_origen.Cells(1).Value
      Else
        valor = f.Offset(1).Value
      End If
    End If
  End If
  cel_destino.Value = valor
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas