Ejecutar macros al seleccionar celda en Excel

Поделиться
HTML-код
  • Опубликовано: 4 ноя 2024

Комментарии • 95

  • @luisjonama3222
    @luisjonama3222 4 года назад +2

    Una claridad excepcional en las explicaciones

  • @rsancheza54
    @rsancheza54 3 года назад +1

    Excelente video y material Ing. Sergio.- Cada vez que necesito una consulta específica entro a tu canal y ahí está la solución.- Gracias una vez más por compartir y enseñar.

  • @ms_envios
    @ms_envios 6 лет назад +1

    me han sido muy utiles tus videos ya casi logro terminar mi sistema de mi negocio lo unico a lo que no me gusta entrarle es a las formulas matriciales pero de ahi en fuera a ti es al que mejor le entiendo las explicaciones

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      Te agradezco el comentario. Me gusta aplicar mis vivencias en los vídeos.

  • @Antonio8688
    @Antonio8688 7 лет назад +1

    Como siempre, Sergio, interesantes e instructivos tus videos. Gracias.

  • @pedroedwinmamaniquispe858
    @pedroedwinmamaniquispe858 7 лет назад +2

    Saludos desde Bolivia, muy bueno el aporte, felicidades.

  • @soportetributariointegral
    @soportetributariointegral 4 года назад +1

    sabes explicar muy bien, es un don.
    una pregunta cual seria el evento cuando se despliega una lista de validacion en una celda'?

  • @brendamg7298
    @brendamg7298 Год назад +1

    Excelente video y explicación.

  • @JMAnguiano
    @JMAnguiano 4 года назад

    Excelente aporte, lo utilicé en para lanzar un formulario con un Textbox para la búsqueda y un Listbox para desplegar el resultado, el cual lo saca de la hoja artículo, mi pregunta, aprovechando, cómo puedo hacer para que al dar doble clic en el resultado del listbox me aplique el item seleccionado y lo ponga en la celda desde donde llame el formulario? ojalá y me pudieras orientar, o si ya tienes algún video sobre eso para verlo. un cordial saludo.

  • @krausersocabones3018
    @krausersocabones3018 5 лет назад

    Sergio, espero te encuentres bien, tengo una consulta y espero contar con tu valioso apoyo, tengo una macro con worksheet change, y son al ingresar datos en 4 celdas por lo cual ocupo 4 if pero aun no encuentro la manera para que corran las 4 ese decir ejemplo la si en en el rango "A:A" en cualquier fila se le.captura la fecha y cambia de no tener nada a tener una fecha corre la primer macro es decir va aunado a un call en este caso el sub es formular, despues en el rango k:k es lo mismo si se le captura el.numero de orden de compra correra una macro diferente entonces ya tengo los 4 subs y he intentado hacer la macro en la.hoja1 con worsheet change pero me pide bloque with o seleccionar objeto, espero me.puedas ayudar con eso son 4 rangos que si se les captura datos en cualquier fila llamarán un sub en otro modulo gracias por tus aportes 👍

  • @jorangot
    @jorangot 3 года назад +1

    Muy buena explicación. Por favor si me puede colaborar. Necesito que se ejecute una macro cuando una celda no esta en blanco, es decir, que se ejecute la macro que tengo para ajustar una celda apenas intruduzca un texto en una distinta que le envia información a la otra con una fórmula buscarv.

  • @nicandroraymundoflores7864
    @nicandroraymundoflores7864 4 года назад

    Gracias por la enseñanza, quisiera que haga un video para insertar hora actual en la celda seleccionada, pero antes realize una pregunta si selecciono si pues que me inserte caso contrario no..le agradezco otra .....bendiciones

  • @Emevic17
    @Emevic17 7 лет назад +1

    Muy buen aporte....muchas gracias Sergio

  • @JennerBello
    @JennerBello 3 года назад

    justamente lo que estaba buscando

  • @erickcruzbalderas2175
    @erickcruzbalderas2175 4 года назад

    bro me eh suscrito y aprendido mucho de ti eres un crack! espero y sigas asi bro me has ayudado mucho pero ahora esoty atorado en un programa, crees que me puedas ayudar con generar un mini projecto, mira te explico tengo 1 escaner (lector de codigos). quiero hacer una lista o levantamiento de pedidos y que se vallan guardando en una bd en este caso access hasta ahi ya lo tengo pero no se como hacerle si llevo una lista y con el mismo escaner poder estando cerrando pedidos al mismo tiempo que crees o que me recomiendas usar espero y me puedas ayudar amigo y felicitaciones por tu canal muy bueno! saludos desde acuna coahuila!

  • @alexanderarias7384
    @alexanderarias7384 6 лет назад +1

    excelente maestro muchas gracias se que todo me va a servir de gran ayuda

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      Te agradezco el comentario Alexander. No olvides compartir con tus amigos.

  • @DonBenji212
    @DonBenji212 3 года назад

    Usted es de los mejores

  • @andresquintero1956
    @andresquintero1956 6 лет назад

    Excelente Sergio, una pregunta, como hacer para utilizar estos códigos, que al dar click en una celda, en vez de sacar el mensaje salga un formulario, sacando todos los datos de esa fila? Muchas gracias por las enseñanzas y pendiente de tu respuesta.

  • @florenciomalquirodriguez4740
    @florenciomalquirodriguez4740 7 лет назад +1

    Excelente vídeo, gracias por compatir sus conocimientos.

  • @danielbaquero
    @danielbaquero 6 лет назад +1

    Interezante video Sergio, me gustaría saber como puedo incluir un comentario a las celdas modificadas con esta macro...Gracias

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      +Daniel Baquero Hola. Usa esta lógica:
      Range("A1"). AddComment "Texto"

    • @danielbaquero
      @danielbaquero 6 лет назад

      Mira tengo este codigo
      Private Sub Worksheet_Change(ByVal Target As Range)
      If Not Intersect(Target, Range("B13:P72")) Is Nothing Then
      Range(Target.Address).AddComment Text:="CELDA MODIFICADA"
      End If
      End Sub
      Gracias...por tu pronta rspuesta

  • @50toledo
    @50toledo 6 лет назад

    hola buenos días, gracias por compartir tus conocimientos,me han ayudado en mis practicas, tengo una pregunta, como selecciono celdas no continuas e ingresarles diferentes valores por medio de macros, por ejemplo: a1, b2, c3,.........que evento necesito usar para que la macro funcione, gracias, buen dia

  • @esthernavarroalvarezdeeula3593
    @esthernavarroalvarezdeeula3593 2 года назад

    Buenos días Sergio, me encantan tus vídeos lo explicas todo genial. Tengo una consulta acerca de este vídeo, se podría seleccionar celdas que estuvieran dentro de una tabla específica?? Como se puede hacer?? Muchas gracias
    Sigue haciendo estos vídeos tan maravillosos aprendemos mucho con ellos

  • @JuanSuarez-yy2pc
    @JuanSuarez-yy2pc 3 года назад

    Excelente video y explicación, pero tengo una DUDA,- podría ocupar esta macro para disparar otra que visualice un Userform donde quiero que aparezca información de algunas bases de datos externas dependiendo el nombre de la celda a la izquierda donde se especifica el nombre de la Base de Datos escogida, crees que sea posible me ayudes a obtener la macro correcta, gracias, espero tu comentario y ayuda. se que puedes Sensei.......

  • @ARRIETA946
    @ARRIETA946 5 лет назад

    Hola excelente aporte, se asemeja a lo que deseo, yo deseo sacar un recordatorio o alerta como el tuyo, pero así: yo ingreso la fecha de un documento en un la celda A1, en b1 tengo una fecha en que se entrega ese documento, en c1 tengo una comparación y a través de la función SI genero un mensaje y el cambio el color de la celda si la fecha del documento es mayor a la fecha de entrada deseo hacer eso con un mensaje de recordatorio como el que muestras cuando en la celda c1 se genere el mensaje de validación, lo que deseo es que se genere cuando digte las fechas en tiempo real

  • @norbeyvallejo8436
    @norbeyvallejo8436 2 года назад

    Muy interesante, muchas gracias. Como puedo resolverlo si en una columna por ejemplo " G" al seleccionar una fila ( G2 ó G3 ó G4) y se deja vacía permita dejar el dato que se encuentra en otra columna de la misma fila ( B2, B3 ó B4), pero si se modifica (G2, ó G3 ó G4), rescate una formula en la columna de la misma fila (B2, B3 ó B4). Tienes el código.. mil gracias

  • @felipeminaya2309
    @felipeminaya2309 3 года назад

    EXCELENTE VIDEO!!

  • @gustavopineda7933
    @gustavopineda7933 3 года назад

    🇭🇳Excelente macro Sergio. 😀👍🇭🇳

  • @moisesflores3465
    @moisesflores3465 2 года назад

    GRACIAS AMIGO BUEN VIDEO TE QUIERO

  • @mariaanadelpuerto6541
    @mariaanadelpuerto6541 7 лет назад +1

    ¡Gracias Sergio!

  • @JuanAranguren-l8o
    @JuanAranguren-l8o 7 месяцев назад +1

    Gracias exelente

  • @josekobian
    @josekobian 3 года назад

    Cómo puedo activar Macros con Validación de Datos al momento de cambiar la celda ACTIVADO ó DESACTIVADO, y consecutivamente activar/desactivar el macro, saludos y gracias.

  • @arturrolandoshugulicaicedo9117
    @arturrolandoshugulicaicedo9117 3 года назад

    Estimado Sergio, excelente video, tengo una inquietud, que código puedo utilizar para que recorrer celdas seleccionadas discontinuas y en este proceso ejecute una acción, por su gentil atención le quedo muy agradecido

  • @juandagali
    @juandagali 4 года назад

    Muy bien explicado!

  • @richardsutil3632
    @richardsutil3632 4 года назад

    Excelente, de gran ayuda, gracias

  • @felipesantana1467
    @felipesantana1467 6 лет назад +1

    Excelentes videos MVP Sergio, pregunta: Donde puedo obtener todas las funciones de vba?
    para poder descargarlas, muchas gracias por esos magníficos videos

  • @dpitu001
    @dpitu001 7 лет назад

    Buenos días Sergio:
    Quería consultarte como sería la macro si en lugar de mostrar un mensaje con la ubicación leyera el valor de la celda y lo usara para filtrar una tabla dinámica. Me bastaría saber cómo sería el código vba con valores de un rango en una sola columna.

  • @carlosmontenegro7213
    @carlosmontenegro7213 6 лет назад

    Buenas tardes, gracias por el tutorial. Tome como base el tutorial de activar la macro al seleccionar una celda para llamar un formulario, y funciona bien cuando lo hago en una ceda de la hoja, sin embargo, intente hacer lo mismo pero para que se active al seleccionar una celda de una tabla que se encuentra en la hoja, pero no funciona, puede por favor ayudarme?

  • @pagf6180
    @pagf6180 2 года назад

    Muy interesante

  • @angelgarcianieto6883
    @angelgarcianieto6883 9 месяцев назад

    Ing. Sergio cómo puedo hacer que una celda ponga la "dirección" (función "dirección) de una celda y automáticamente me posicione sobre ella? Ejemplo en celda A1 me aparece la "dirección" de celda $D$15 y que automáticamente me envíe a dicha celda ($D$15). De antemano gracias.

  • @hmurciafph
    @hmurciafph 3 года назад +1

    Se puede reducir el código omitiendo la variable CeldaActiva, así:
    If Not Intersect(Target, Range("A10:A17, B10, D10:D21")) Is Nothing Then
    MsgBox "Has seleccionado la celda " & Target.Address
    End If

  • @freddyanaribes7083
    @freddyanaribes7083 4 года назад

    Don Sergio cómo usar este procedimiento para cada hoja del libro excel sin tener q escribir el código en cada módulo de cada hoja?? Y que sea usado en cada hoja de un libro que no esté habilitado para macros..??

  • @adolfoenorbita
    @adolfoenorbita 10 месяцев назад

    Gracias, ando buscando una opcion que al terminar de introducir infomacion, presionar enter y me envie a una celda especifica.

  • @karendanielabustamante6100
    @karendanielabustamante6100 2 года назад

    Hola y cómo se puede poner un botón, el cual debe detectar en que columna se encuentra el cursor y ordenar la tabla por esa columna?????????????

  • @josemiguelvelizchong5698
    @josemiguelvelizchong5698 3 года назад

    Hola Segio como puedo utilizar esta macro para que la seleccion sea automatica una tras otra?. Ej: si yo quisiera primero elegir desde la A1 hasta la A10 y luego desde la A11 hasta la A20 pero que se realice de forma automatica cuantas veces sean necesaias?

  • @59tcl
    @59tcl 5 лет назад

    Muchas gracias.

  • @jorgecondori1598
    @jorgecondori1598 5 лет назад

    Buenas noches, gracias por compatir tus conocimientos.
    Me gustaría saber si hay alguna forma para seleccionar el rango, por ejemplo, "B10:F23", Teniendo en cuenta que el dato "F23" puede variar ya que tengo una tabla que cambia de tamaño. Es decir que mi tabla puede tener datos desde B10 a F23 o desde B10 a F58. Desde ya muchas gracias!

    • @AlJimmyRex
      @AlJimmyRex Год назад

      Lo que yo hice es marcar como rango toda la columna range ("D:D").Select

  • @kerwin.l.h581
    @kerwin.l.h581 5 лет назад

    Exelente video, pero como hago para tener dos tipos de SelectionChange en el codigo de la misma hoja.

  • @jfranciscol2872
    @jfranciscol2872 2 года назад

    Hola , Como hacer que la celda tome el valor que seleccione en un filtro? por favor

  • @vicentemedel8469
    @vicentemedel8469 3 года назад

    Hola como puedo hacer la siguiente seleccion
    Quiero que la macro seleccione un rango desde A1:AN*** en la fila de AN sea igual al final de la columna A pero encontrando el caracter ""
    lo que pasa es que en mi columna hay una formula hasta bien abajo pero con la funcion si, si no encuentra nada que arroje "" entonces no se como seleccionar este rango

  • @alvarorodriguezlasso
    @alvarorodriguezlasso 7 лет назад +1

    Muy buen video

  • @alfred23a
    @alfred23a 7 лет назад

    HOLA, ESPERO ME PUEDAS AYUDAR, ESTOY COPIANDO DATOS DE UN LIBRO A OTRO MEDIANTE UNA MACRO PERO MI PROBLEMATICA ESTA EN QUE NECESITO QUE SE EJECUTE EN LA CELDA QUE SELECCIONE ME REFIERO LA MISMA INFORMACION EN DIFERENTES TABLAS POR FECHA, NO PUEDO DEFINIRLE UNA CELDA POR QUE DIA A DIA SE GENERAN NUEVOS RECUADROS CON FECHA, ESPERO ME PUEDAS AYUDAR

  • @alejandracaudillo4068
    @alejandracaudillo4068 5 лет назад

    Tengo una actividad parecida pero no puedo hacerla me piden un botón el cual ordene los datos de la columna en donde coloque el cursor , debe crearse de referencia relativa de manera que al colocarse en la columna (ejemplo) nombre sortee la columna alfabéticamente de la A a la z o de menor a mayor y cuando cambie de columna lo realice automáticamente

  • @levivar3793
    @levivar3793 5 лет назад

    hola sergio , una cosulta cuando genero un archivo nuevo usando el mismo codigo , y claro tenientdo cuidado en la s hojas y el nombre del formulario me sale error 424, esto no me permite avanzar en el apredizaje y en la realizacion de un pequeño proyecto que tengo. de antemano gracias por su ayuda

  • @dangordon1123
    @dangordon1123 6 лет назад +1

    hola te hago una pregunta?
    como hago esto:
    hacer una macro que borre la validación de datos en la o las celdas que esten seleccionadas (pintadas) con un boton
    es decir, por ej selecciono un ramgo en particular, apreto un boton y me borra la validación de datos en ese rango

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      Hola Dan. Como lo haría es, grabo una macro donde selecciono una celda con validación, entro al formulario donde la configuré, borro la validación y después veo el código generado.

    • @dangordon1123
      @dangordon1123 6 лет назад +1

      @@SergioAlejandroCampos uy no se como se hace todo eso jaja
      me parece muy avanzado para mi :(

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад +1

      No importa. Usa esta macro:
      Selection.Validation.Delete

    • @dangordon1123
      @dangordon1123 6 лет назад +1

      @@SergioAlejandroCampos lo voy a probar! gracias

    • @dangordon1123
      @dangordon1123 6 лет назад +1

      con sub? como tendria que escribirlo?

  • @manganime6072
    @manganime6072 2 года назад

    Que sucede si yo grabo que seleccione colunma a,b,c y cuando la corro hace los cambios en las columnas d,e,f??? porque pasa eso

  • @1852073
    @1852073 3 года назад

    Y si quiero que lo muestre en una celda en lugar de msgbox?

  • @josereynoso8314
    @josereynoso8314 6 лет назад +1

    hola buenos días, realice un formulario en excel y quiero que al dar enter, el cursor cambie por ejemplo de la celda $x$3 a la celda $z$12 y sucesivamente

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      Hola, para eso no hace falta una macro. Sólo desbloques las celdas que deseas que se elijan al dar enter. Da clic derecho en Formato de celdas y en la pestaña Proteger desmarca Bloqueada. Luego proteges la hoja en la pestaña Revisar > Proteger hoja.

  • @matancero2001
    @matancero2001 6 лет назад +1

    Hola Amigo..tengo un problema...me puedes mandar una dirección de correo para enviártelo... Saludos desde Lima

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  6 лет назад

      +matancero2001 Hola. Si no es molestia, prefiero que lo digas por este medio.

    • @matancero2001
      @matancero2001 6 лет назад

      COn palabras es dificil de hacerme entender..te lo pedia, para enviarte mi caso con un video adicional...Saludos

    • @matancero2001
      @matancero2001 6 лет назад

      No puedo amigo,,porque de repente no puedo explicartelo bien y ademas quiero enviarte un video donde trato de explicar... se trata de un aplicativo que hice en excel para matricualr a mis alumnitos en red... o en todo caso a traves de la web, pues he visto que se puede hacer...pero previo codigo...que yo no se hacer Saludos

  • @florenciomalquirodriguez4740
    @florenciomalquirodriguez4740 7 лет назад

    Una consulta. He Creado varias MACROS en una hoja de excel, que la tomo como modelo, ya que es de un mes (Enero), entonces, voy copiando esa hoja para los meses siguientes (de febrero a diciembre) en el mismo libro. Pero las MACROS que he creado no se copian, es decir vuelven a la referencia de la primera hoja únicamente. Necesito saber cómo hago para que se copien también las macros, y las referencias sean a las nuevas hojas y se ejecutan de manera independiente por cada mes, del mismo libro de Excel? GRACIAS

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  7 лет назад

      +florencio malqui rodriguez Hola. Tienes dos opciones, poner el código VBA en cada una de las hojas (botón derecho en la pestaña - ver código), o que tu macro haga referencia a la hoja que tengas activa (activesheet.range...).

    • @florenciomalquirodriguez4740
      @florenciomalquirodriguez4740 7 лет назад +1

      Disculpa mi ignorancia. No entiendo. Le puedo alcanzar mi archivo para que ud. me pueda ayudar. Gracias

    • @SergioAlejandroCampos
      @SergioAlejandroCampos  7 лет назад

      +florencio malqui rodriguez Pásame por aquí, si es posible, el código de tu macro.

    • @florenciomalquirodriguez4740
      @florenciomalquirodriguez4740 7 лет назад

      Esta es la información:
      Microsoft Excel Objetos:
      - Hoja 1 (Data)
      - Hoja 2 (Consolidado)
      Módulos::
      - Modulo 1
      En el Modulo 1 tengo esta macro:
      Public tope As Long
      Sub DejamosComoEstuvo()
      On Error GoTo falla
      tope = Range("c65536").End(xlUp).Row
      Range("A9:A" & tope).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
      Exit Sub
      falla:
      End Sub
      Sub separamos()
      Fila = 9
      Do
      If (Cells(Fila, "L").Value >= 700) Or (Cells(Fila, "L").Value = 0) Then
      Cells(Fila, "A").EntireRow.Insert
      Cells(Fila + 2, "A").EntireRow.Insert
      Fila = Fila + 3
      ElseIf (Cells(Fila - 1, "b").Value Cells(Fila, "b").Value) And (Cells(Fila - 1, "b").Value "" And Cells(Fila, "b").Value "") Then
      Cells(Fila, "A").EntireRow.Insert
      Fila = Fila + 2
      Else
      Fila = Fila + 1
      End If
      Loop Until Cells(Fila, "b").Value = ""
      tope = Range("c65536").End(xlUp).Row + 1
      End Sub
      Sub consolidamos()
      Hoja2.Rows("9:65536").Clear
      Range("E8").Select
      Do
      If inicia = "" Then inicia = 9
      CeldaTermino = Columns("E:E").Find(What:="", After:=ActiveCell.Offset(1, 0), LookIn:=xlValues, LookAt:= _
      xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
      False, SearchFormat:=False).Select
      ' ActiveCell.Interior.Color = vbBlue
      hasta = ActiveCell.Row - 1
      With Hoja2.Range("A65536").End(xlUp)
      .Offset(1, 0).Formula = "RV-" & Format(.Offset(1, 0).Row - 8, "000") '"=" & Hoja1.Name & "!" & Cells(inicia, "A").Address(0, 0)
      .Offset(1, 1).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "B").Address(0, 0)
      .Offset(1, 2).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "C").Address(0, 0)
      .Offset(1, 3).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "D").Address(0, 0)
      .Offset(1, 4).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "E").Address(0, 0)
      .Offset(1, 5).Formula = "=max(" & Hoja1.Name & "!" & Range(Cells(inicia, "E"), Cells(hasta, "E")).Address & ")"
      If .Offset(1, 5).Value = .Offset(1, 4).Value Then .Offset(1, 5).ClearContents
      .Offset(1, 6).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "G").Address(0, 0)
      If .Offset(1, 6).Value = 0 Then .Offset(1, 6).Value = ""
      .Offset(1, 7).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "H").Address(0, 0)
      If .Offset(1, 7).Value = 0 Then .Offset(1, 7).Value = ""
      .Offset(1, 8).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "I").Address(0, 0)
      .Offset(1, 9).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "J"), Cells(hasta, "J")).Address & ")"
      .Offset(1, 10).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "K"), Cells(hasta, "K")).Address & ")"
      .Offset(1, 11).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "L"), Cells(hasta, "L")).Address & ")"
      End With
      inicia = hasta + 2
      If Cells(inicia, "A").Value = "" Then inicia = inicia + 1
      If Cells(ActiveCell.Row, "E").Row = tope Then Exit Sub

      Loop Until CeldaTermino = Fin
      End Sub
      Sub Pocesa()
      With Application
      .ScreenUpdating = False
      .Calculation = xlCalculationManual
      Call DejamosComoEstuvo
      Call separamos
      Call consolidamos
      Call DejamosComoEstuvo
      .ScreenUpdating = True
      .Calculation = xlCalculationAutomatic
      End With
      MsgBox "Proceso terminado." & Chr(13) & "Puede ver el resultado en la hoja de nombre Consolidado", vbInformation, "PROCESO TERMINADO"
      Hoja2.Select
      Range("E2").Select
      End Sub
      Le agradezco por su ayuda. Le alcanzo mi correo: florenciomalqui@hotmail.com BENDICIONES.

    • @florenciomalquirodriguez4740
      @florenciomalquirodriguez4740 7 лет назад

      Esta es la información:
      Microsoft Excel Objetos:
      - Hoja 1 (Data)
      - Hoja 2 (Consolidado)
      Módulos::
      - Modulo 1
      En el Modulo 1 tengo esta macro:
      Public tope As Long
      Sub DejamosComoEstuvo()
      On Error GoTo falla
      tope = Range("c65536").End(xlUp).Row
      Range("A9:A" & tope).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
      Exit Sub
      falla:
      End Sub
      Sub separamos()
      Fila = 9
      Do
      If (Cells(Fila, "L").Value >= 700) Or (Cells(Fila, "L").Value = 0) Then
      Cells(Fila, "A").EntireRow.Insert
      Cells(Fila + 2, "A").EntireRow.Insert
      Fila = Fila + 3
      ElseIf (Cells(Fila - 1, "b").Value Cells(Fila, "b").Value) And (Cells(Fila - 1, "b").Value "" And Cells(Fila, "b").Value "") Then
      Cells(Fila, "A").EntireRow.Insert
      Fila = Fila + 2
      Else
      Fila = Fila + 1
      End If
      Loop Until Cells(Fila, "b").Value = ""
      tope = Range("c65536").End(xlUp).Row + 1
      End Sub
      Sub consolidamos()
      Hoja2.Rows("9:65536").Clear
      Range("E8").Select
      Do
      If inicia = "" Then inicia = 9
      CeldaTermino = Columns("E:E").Find(What:="", After:=ActiveCell.Offset(1, 0), LookIn:=xlValues, LookAt:= _
      xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
      False, SearchFormat:=False).Select
      ' ActiveCell.Interior.Color = vbBlue
      hasta = ActiveCell.Row - 1
      With Hoja2.Range("A65536").End(xlUp)
      .Offset(1, 0).Formula = "RV-" & Format(.Offset(1, 0).Row - 8, "000") '"=" & Hoja1.Name & "!" & Cells(inicia, "A").Address(0, 0)
      .Offset(1, 1).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "B").Address(0, 0)
      .Offset(1, 2).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "C").Address(0, 0)
      .Offset(1, 3).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "D").Address(0, 0)
      .Offset(1, 4).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "E").Address(0, 0)
      .Offset(1, 5).Formula = "=max(" & Hoja1.Name & "!" & Range(Cells(inicia, "E"), Cells(hasta, "E")).Address & ")"
      If .Offset(1, 5).Value = .Offset(1, 4).Value Then .Offset(1, 5).ClearContents
      .Offset(1, 6).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "G").Address(0, 0)
      If .Offset(1, 6).Value = 0 Then .Offset(1, 6).Value = ""
      .Offset(1, 7).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "H").Address(0, 0)
      If .Offset(1, 7).Value = 0 Then .Offset(1, 7).Value = ""
      .Offset(1, 8).Formula = "=" & Hoja1.Name & "!" & Cells(inicia, "I").Address(0, 0)
      .Offset(1, 9).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "J"), Cells(hasta, "J")).Address & ")"
      .Offset(1, 10).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "K"), Cells(hasta, "K")).Address & ")"
      .Offset(1, 11).Formula = "=sum(" & Hoja1.Name & "!" & Range(Cells(inicia, "L"), Cells(hasta, "L")).Address & ")"
      End With
      inicia = hasta + 2
      If Cells(inicia, "A").Value = "" Then inicia = inicia + 1
      If Cells(ActiveCell.Row, "E").Row = tope Then Exit Sub

      Loop Until CeldaTermino = Fin
      End Sub
      Sub Pocesa()
      With Application
      .ScreenUpdating = False
      .Calculation = xlCalculationManual
      Call DejamosComoEstuvo
      Call separamos
      Call consolidamos
      Call DejamosComoEstuvo
      .ScreenUpdating = True
      .Calculation = xlCalculationAutomatic
      End With
      MsgBox "Proceso terminado." & Chr(13) & "Puede ver el resultado en la hoja de nombre Consolidado", vbInformation, "PROCESO TERMINADO"
      Hoja2.Select
      Range("E2").Select
      End Sub
      Le agradezco por su ayuda. Le alcanzo mi correo: florenciomalqui@hotmail.com BENDICIONES.
      Mostrar menos
      RESPONDER

  • @gerardosilvs5210
    @gerardosilvs5210 5 лет назад +2

    si necesito ejecutar otra macro cuando seleccionen la celda "A3" y ejecuten la macro "AnchoColumna2" como quedaria el codigo

  • @Emma-id1qv
    @Emma-id1qv 4 года назад

    Muchas gracias, muy bien explicado. Saludos