Ejecucion de macro al cambiar el valor de una celda

Greg Truby

MrExcel MVP
Joined
Jun 19, 2002
Messages
10,013
Hola David,

Si usted habla suficiente inglés, le recomendio este artículo escrito por Chip: Events In Excel VBA que explica en una forma muy complete el tema sobre como usar eventos.

El ejemplo simple que puso mi amigo Juan Pablo usa una forma muy común para este tipo de cosa - compara rangos usando direcciones. El peligro de esta solución es si alguien inserta o suprima columnas a la izquierda o fila arriba de las celdas invulcradas la dirección cambia y su macro va a dar resultados erróneos. Nombrar el rango primero y hacer referencia a tal nombre hace que su solución es resistente a cambios de posición de las celdas claves.
 

Some videos you may like

Excel Facts

VLOOKUP to Left?
Use =VLOOKUP(A2,CHOOSE({1,2},$Z$1:$Z$99,$Y$1:$Y$99),2,False) to lookup Y values to left of Z values.

carodrigue

New Member
Joined
Nov 28, 2018
Messages
1
Esto se hace con el evento Change() de la hoja, así:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then MiMacro

End Sub

Esto llamaría el macro MiMacro cada vez que la celda A1 cambie.

Buenos Dias

Amigo se que ha pasado mucho tiempo desde este tema pero tengo el mismo inconveniente y no se como solucionarlo quisiera saber si me puedo ayudar.. sucede lo siguiente

tengo la siguiente macro:

[FONT=&quot]Sub limitartexto()[/FONT]
[FONT=&quot]Dim limite As Object[/FONT]
[FONT=&quot]Range("B:B").Select[/FONT]
[FONT=&quot]For Each limite In Selection[/FONT]
[FONT=&quot]limite.Value = Left(limite, 10)[/FONT]
[FONT=&quot]Next[/FONT]
[FONT=&quot]End Sub

Pero al momento de correr usa toda la columna y necesito que sea solo la celda escrita dentro de esa columna que puede ser cualquiera desde la 1 a la 10000, y esto es por que en esa columna se escribe los correlativos de las guias y solo necesito los ultimos 9 digitos, y de esta manera corre cada vez que modifico cada celda asi ya este modificada y esto pone muy lento el proceso.

Atento a su respuesta saludos.
[/FONT]
 

James006

Well-known Member
Joined
Apr 4, 2009
Messages
3,680
Hola,

Lo mas importante es de saber precisamente cual es la celda ...

Hasta Luego
 

Watch MrExcel Video

Forum statistics

Threads
1,101,785
Messages
5,482,915
Members
407,368
Latest member
FunkyFriedChicken

This Week's Hot Topics

  • Finding issue in If elseif else with For each Loop
    Finding issue in If elseif else with For each Loop I have tried this below code but i'm getting in Y column filled with W005. Colud you please...
  • MsgBox Error
    Hi Guys, I have the below error show up when i try and run my macro in File1 but works fine if i copy and paste the same code into file2. [ATTACH...
  • CELL FORMAT - IF CONDITION
    My Cell Format is [B]""0.00" Cr". [/B]But in the cell, it is showing 123.00 for editing. (123 is entry figure). (Data imported from other...
  • Show numbers nearly the same
    Is this possible. I have a number that can change very time eg 0.00001234 Then I have a lot of numbers 0.0000001, 0.0000002, 0.00000004...
  • Please i need your help to create formula
    I need a formula in cell B8 to do this >>if b1=1 then multiply ( cell b8) by 10% ,if b1=2 multiply by 20%,if=3 multiply by 30%. Thank you in...
  • Got error while adding column and filter
    Got error while adding column and filter In column Z has some like "Success" and "Error". I want to add column in AA if the Z cell value is...
Top