Macros, una añade letra la otra la quita

Preciso dos macros, que desde mi corto entender no son muy "complicadas", lo explico:

Situado un una celda cualquiera, la macro nº 1 añada una letra al principio, la letra "B".

La otra macro, situado en una celda cualquiera, quite la primera letra que exista a la izquierda de lo escrito.

Lo podemos ver en la imagen, el antes y el después.

Muchas gracias por su ayuda y colaboración.

1 respuesta

Respuesta
1

Si ejecutas la macro para poner "B", ¿Si ya tiene "B" agregar otra "B"?

Si ejecutas la macro para quitar la " B", ¿Si no tiene B quitar el primer número?

Gracias por contestar sr. Dante. Le aclaro.

Yo solicite una macro anterior, que usted, me envió y me vino perfecta, en ella, se recorría una columna y si un registro comenzaba con una letra, lo copiaba a otra hoja.

Bien, con estas macros lo que yo pretendo es que, si un registro no tiene letra pero quiero que al ejecutar su macro me la copie y pegue en la siguiente hoja, yo, situándome  en la celda que NO TIENE LETRA AL PRINCIPIO, ejecutando la macro 1 automáticamente le ponga una letra en el comienzo.

Al igual, si ya trae la letra pero no me interesa que la macro la copie y pegue a otra hoja, con la macro 2 la pueda borrar y así la macro inicial no reconozca dicho registro (le he eliminado la letra inicial) y que no la copie y por supuesto no la pegará.

Espero haberle aclarado sus dudas.

Le reitero mi agradecimiento, no solo por mí, sino por lo que hace por muchas personas, su ayuda, no creo que llegue a "saber" cuanto bien hace.

Saludos desde las Islas Canarias.

Buenos días sr. Dante,

no se si andaré equivocado, me sale como que usted me ha contestado pero, no "veo" la misma.

Le pongo unas imágenes de lo que tengo. Me aparece, en la segunda imagen, el final de mi primera respuesta... pero nada mas.

Muchas gracias por su colaboración.

Saludos desde las Islas Canarias.

Y ahora no entiendo qué necesitas.

¿Quieres copiar registros o poner letras?

Querías una macro 1 para poner una letra.

Y una macro 2 para quitar la letra.

¿Ahora quieres una macro para copiar?

Lo intento de nuevo, olvidemos lo anterior, le estoy causando mucho trastorno y hay muchas personas demandando su ayuda.

* Mis registros empiezan por una letra o por un numero.

* Una macro, que usted ya me envió y funciona perfectamente, recorre la columna A y si MI REGISTRO comienza por una letra, la copia y pega a la siguiente hoja (esto es solo comentario)

Lo que preciso:

* Macro 1 si un registro (12548GLLO9825) NO COMIENZA POR LETRA situándome en la celda que lo contiene y ejecutando dicha macro el resultado sea (B12548GLLO9825) le he colocado automáticamente la letra B al inicio.

* Macro 2 es exactamente lo contrario, si ya trae UNA LETRA AL COMIENZO,  pero en medio o al final de registro pueden tener letras, pero estas NO AFECTAN, solo lo que este mas a la izquierda del registro. Pues bien, si tengo, por ejemplo C258325AA91M, al situarme encima del registro BORRE la letra C en este caso, el resultado sería: 258325AA91M, ha desaparecido la letra C.

Resumiendo, solo deben actuar sobre el primer dato (letra/numero) de dicha cadena, o pone una letra, B, o borra la que trae.

Muchas gracias y disculpe por no sabe explicarle bien, lo que preciso, agradecerle su tiempo.

Saludos desde las Islas Canarias.

Te anexo las 2 macros

Sub PoneLetra()
  With ActiveCell
    If Left(.Value, 1) Like "[0-9]" Then .Value = "B" & .Value
  End With
End Sub
Sub QuitaLetra()
  With ActiveCell
    If Not Left(.Value, 1) Like "[0-9]" Then .Value = Mid(.Value, 2)
  End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas