Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Estimados, Les vengo con una nueva consulta. Seguramente sea sencillo para alguno de ustedes: Tengo una tabla como la del siguiente ejemplo Para cada columna (animal), quiero calcular el tiempo (como resta de fechas) que le lleva a cada animal pasar del estado inicial (primer valor distinto de cero) al estado final (ultimo valor distinto de cero): Ejemplo animal 41689: pasar del estado inicial (3, el 1/1/2018) al estado final (6, el 1/9/2018): 243 días Ejemplo animal 41995: pasar del estado inicial (3.5, el 1/2/2018) al estado final (4.5 el 1/7/2018): 150 días Agradezco mucho su ayuda con esto! 41689 41995 1/1/2018 3 0 1/2/2018 0 3,5 1/3/2018 0 0 1/4/2018 3 4 1/6/2018 0 0 1/7/2018 0 4,5 1/9/2018 6 0 1/10/2018 0 0 Resta de fechas 243 150
  3. Today
  4. joe muchas gracias me obsesioné poniendo .Range en vez de coma, y también con el rango de la celda Muchas gracias
  5. Prueba así: Code128 20, 20, 20, 1.1, ThisWorkbook.ActiveSheet, Range("A1")
  6. Prueba esto Sub ActualizaExistencias() Dim c As Range, Registros As Object Dim celda Set c = Hoja1.Range("D3:F" & Hoja1.Range("c" & Rows.Count).End(xlUp).Row) c.ClearContents On Error Resume Next Set Registros = CreateObject("Scripting.Dictionary") Set c = Hoja3.Range("B3:B" & Hoja1.Range("B" & Rows.Count).End(xlUp).Row) For Each celda In c With celda If CInt(.Offset(, 6)) > 0 Then Registros.Add .Text & .Offset(, 1).Text & "@" & _ .Offset(, 2).Text & "@" & .Offset(, 3).Text, .Offset(, 6).Text End If End With Next Set c = Hoja1.Range("B3:B" & Hoja1.Range("B" & Rows.Count).End(xlUp).Row) For Each celda In c With celda For Each key In Registros.Keys Dim mArray mArray = Split(key, "@") If mArray(0) = .Text & .Offset(, 1).Text Then .Offset(, 2).Value = mArray(1) .Offset(, 3).Value = mArray(2) .Offset(, 4).Value = Registros(key) Registros.Remove (key) Exit For End If Next key End With Next Set Registros = Nothing MsgBox "Existencias actualizadas" End Sub
  7. Hola, Por si ayuda... https://docs.microsoft.com/es-es/office/vba/api/excel.application.inputbox Usando el tipo 8, con el input, deja seleccionar físicamente las celdas que se quieren incluir. Saludos.
  8. Gracias Gerson lo voy a peobar y te comento
  9. Yesterday
  10. Buenas noches, me podéis ayudar con esta macro? es para generar codigo de barras, la cuestion que solo me funciona de la siguiente manera: Code128 20, 20, 20, 1.1, ThisWorkbook.ActiveSheet, "11Q94PTT" Pero me gustaría que se cambiara con un rango de una celda. ¿ seria posible algo asi? pero me da error Code128 20, 20, 20, 1.1, ThisWorkbook.ActiveSheet.Range("=F1C1") y mil gracias code128.rar
  11. Hola buen día, alguien podrá apoyarme para terminar de solucionar este tema. Gracias
  12. ¡Hola, @SALAVERRINO! Basta con que uses la siguiente fórmula: =TRUNCAR(C4;1) Dando formato a la celda para que muestre dos decimales. Nota: Mi separador de argumentos es ";". Si no es el tuyo, cámbialo por "," o por el que maneje tu sistema. ¡Bendiciones!
  13. Buenas tardes a los integrantes de este prestigioso foro, en esta ocasion recurro a Uds, para que me ayuden con una formula, el cual me permita quitar el ultimo decimal como se aprecia en la celda D4 para asi obtener resultado final que se encuentra en la celda D4. Desde ya agradezco su apoyo y colaboracion, adjunto archivo Saludos redondeos.xlsx
  14. @Luis Antonio Torres , una solución sería: Sub ConcatenaColumnaS2() Dim numzeros As String Dim Ultima As String Dim rng As String Dim cel As Range Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ActiveSheet.DisplayPageBreaks = False numzeros = "0000000000" Range("A:D").NumberFormat = "@" Range("E:E").NumberFormat = "dd/mm/yyyy" rng = InputBox("Elegir rango", "Elija el rango en formato XX:YY") For Each cel In Range(rng) cel.Offset(, -4) = Format(cel, "yyyy") & Format(cel, "mm") & Format(cel, "dd") _ & Left(numzeros, 10 - Len(cel.Offset(, 3))) & cel.Offset(, 3) _ & Left(numzeros, 10 - Len(cel.Offset(, 4))) & cel.Offset(, 4) _ & cel.Offset(, 5) _ & cel.Offset(, 6) cel.Offset(, -3) = cel.Offset(, 2) & cel.Offset(, 6) Next cel Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic Application.EnableEvents = True ActiveSheet.DisplayPageBreaks = True Application.CutCopyMode = False End Sub
  15. Adjunto parte de la hoja que estoy haciendo es simplemente la parte de las fechas, lo otro en principio funciona, supongo que tendre ,as dudas, pero ya os comentare. Gracias Libro13.xlsx
  16. amigo @eugeniocol, revisa el anexo, coloque dos formas de hacerlo, hay muchas formas de hacerlo, pero la forma como esta en tu macro, pues es la peor jejeje, suerte Foro copia con criterio.xlsm
  17. Nick Pues enhorabuena! Respecto a tu observación, en efecto falla la formula, pero haciendo cambio de función, creo da el resultado esperado =IF(DAY(Tabla1[Fecha Pedido])<8,1,ROUNDUP(DAY(Tabla1[Fecha Pedido])/7,0)) Modifica y prueba Saludos
  18. Estimados Amigos, Buenos días, tengo el siguiente libro que realiza un procedimiento basado en buscar la última fila con información y recuperar el rango en la columna E. Me gustaría poder trabajarlo únicamente con un rango seleccionado, es decir, que cuando ejecute la macro no lo haga para todo el rango si no para el rango que seleccioné. Alguien me podría dar una mano por favor. Gracias. libropruebas.xlsm
  19. Impecable tierra_pampa, muchísimas gracias, ya lo estoy adaptando a mi libro Saludos cordiales
  20. Bienvenido a la comunidad! En Ayuda Excel hemos dado solución a miles de consultas, y seguiremos haciéndolo mucho tiempo más!. Espero que aquí encuentres la ayuda que necesitas. ¡Nos vemos!
  21. Sergio

    Presentacion

    Bienvenido Tauet! Estoy seguro de que en Ayuda Excel encontrarás el apoyo que necesitas para tus pinitos... ¡Nos vemos!
  22. Hola @jose_luisc Te dejo una posible opción. Suerte!!! Sub Rectánguloesquinasredondeadas1_Haga_clic_en() If Hoja1.Range("H3").Value > 21 Then Hoja2.Activate Range("G4").Activate Else Hoja3.Activate Range("G4").Activate End If End Sub
  23. Hola, de nuevo! Entonces, bastaría con esto: =SUMA(N(MMULT(N(CONTAR.SI(DESREF(B$2:G$2;FILA(B$2:B$33)-FILA(B$2););$K2:$P2)>0);{1;1;1;1;1;1})={3\4})) Bendiciones!
  24. Buen día gente del foro, acá estoy con otra consulta: le asigné a una figura que está en la hoja "Busqueda B.VENTAS" una macro para que me dirija a la celda G4 de esa misma hoja, pero ahora sumé otra hoja y necesito agregarle a ese código un condicional que evalúe: si el valor de la celda H3 que está en la hoja "VENTAS" es mayor a 21 entonces me debería dirigir a la celda G4 de hoja "Busqueda B.VENTAS" (que es donde está el botón) y si es menor o igual, que me lleve a la hoja "FACTURA MEDIA" en la celda G4. Desde ya muchas gracias Ejemplo.xlsm
  25. Hola, esta es mi primera consulta a los gurús del foro, estoy haciendo una hoja para controlar la ocupación de una casa y necesito que al introducir una reserva me controle que esas fechas no estén ocupadas y si es así me saque un msg emergente. La idea es que el único día de una reserva que puede coincidir con otra es el primero de una con el último de otra, es decir el día que se va alguien puede entrar otra persona. Gracias por vuestra atención
  1. Load more activity
×
×
  • Create New...

Important Information

Privacy Policy

Ayuda Excel - Madrid, Madrid, ES - Valorada por 6254 personas - Aprender Excel - Total: 4.7 / 5