Buenos días, me he vuelto loco intentando encontrar la solución a un problema que tengo y agradecería ayuda. Intento explicaros lo mejor que pueda.
Tengo una Hoja de excel la cual tiene datos en la columna A y la columna B. Necesito que si selecciono el dato que yo necesite de la columna A y apriete un botón se ejecute la macro y... cambie a color rojo el dato de la celda seleccionada, compruebe el dato de su derecha, columna B, y si pone Nuevo me copie el dato seleccionado, Columna A, en L6, pero si pone a la derecha del dato Antiguo copie el dato de la columna A en la celda O6.
En resumen, que compruebe la macro a la derecha del dato seleccionado y copie en L6 u O6 según si pone Nuevo o Antiguo a su derecha. No sé si me he explicado.
No necesito que haga un LOOP y mire en toda la columna de una vez, solo el dato seleccionado en ese momento.
Os pego lo que tengo por el momento, lo de poner el texto seleccionado en rojo ya lo hace pero me traspasa siempre el dato a L6 como podéis ver en el código y no sé como hacer que distinga su dato de la derecha para que pegue en una celda o en otra según se Nuevo o Antiguo. Tampoco puedo poner formulas, necesito que sea una macro vba.
Sub pruebaPEGADO()
a = ActiveCell.Address
valor = Range(a).Value
If ActiveCell.Value = "Antiguo" Then
Selection.Range("L6").Value = valor
Else
ActiveCell.Offset(1, 0).Select
End If
'End With
End Sub
Y este otro.............?
Sub TraspasarVIN()
'Cambio a Rojo el VIN seleccionado.
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
'Copio y pego VIN segun sea Nuevo o Antiguo a las celdas correspondientes
a = ActiveCell.Address
valor = Range(a).Value
Range("L6").Value = valor
Range(a).Select
End Sub
No sé como solucionar este tema y os agradecería ayuda.
Un saludo.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buenos días, me he vuelto loco intentando encontrar la solución a un problema que tengo y agradecería ayuda. Intento explicaros lo mejor que pueda.
Tengo una Hoja de excel la cual tiene datos en la columna A y la columna B. Necesito que si selecciono el dato que yo necesite de la columna A y apriete un botón se ejecute la macro y... cambie a color rojo el dato de la celda seleccionada, compruebe el dato de su derecha, columna B, y si pone Nuevo me copie el dato seleccionado, Columna A, en L6, pero si pone a la derecha del dato Antiguo copie el dato de la columna A en la celda O6.
En resumen, que compruebe la macro a la derecha del dato seleccionado y copie en L6 u O6 según si pone Nuevo o Antiguo a su derecha. No sé si me he explicado.
No necesito que haga un LOOP y mire en toda la columna de una vez, solo el dato seleccionado en ese momento.
Os pego lo que tengo por el momento, lo de poner el texto seleccionado en rojo ya lo hace pero me traspasa siempre el dato a L6 como podéis ver en el código y no sé como hacer que distinga su dato de la derecha para que pegue en una celda o en otra según se Nuevo o Antiguo. Tampoco puedo poner formulas, necesito que sea una macro vba.
Sub pruebaPEGADO()
a = ActiveCell.Address
valor = Range(a).Value
If ActiveCell.Value = "Antiguo" Then
Selection.Range("L6").Value = valor
Else
ActiveCell.Offset(1, 0).Select
End If
'End With
End Sub
Y este otro.............?
Sub TraspasarVIN()
'Cambio a Rojo el VIN seleccionado.
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
'Copio y pego VIN segun sea Nuevo o Antiguo a las celdas correspondientes
a = ActiveCell.Address
valor = Range(a).Value
Range("L6").Value = valor
Range(a).Select
End Sub
No sé como solucionar este tema y os agradecería ayuda.
Un saludo.