Saltar al contenido

Máximos colaboradores


Popular Content

Showing content with the highest reputation since 23/06/18 in all areas

  1. 3 points
    Si realmente tu empresa usa Excel para tratar 800.000 registros, el problema no lo tienes tu, lo tiene tu empresa.
  2. 3 points
    Mario Rodz

    problema si (y con mails

    Que tal @juanmanuel85, adjunto dos soluciones Saludos. PROBLEMA MAIL.xlsx
  3. 3 points
    Hola! a ambos Ademas de lo explicado por Avalencia, debes conocer el comando With / End With Por lo que quedaría así [este procedimiento lo podrías correr desde cualquier hoja del libro] Sub Comisión() With Hoja2 For i = 1 To .Range("A" & .Rows.Count).End(xlUp).Row If .Cells(i, "A") = Hoja3.Range("A2") Then .Range(.Cells(i, "B"), .Cells(i, "P")).Interior.ColorIndex = 4 .Cells(i, "P") = "Comisionado" & " " & Date End If Next End With End Sub Y lo que se ahorra para programar! Saludos
  4. 3 points
    Yo lo haría así: Private Sub BotonEliminarCargoDirecto_Click() With Sheets("Materiales") For x = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(x) = True Then Set oc = .Columns("A").Find(ListBox1.List(x, 0), , , xlWhole) .Rows(oc.Row).Delete End If Next End With textobuscaroc_Change End Sub
  5. 2 points
    Hola @Gerson Pineda, lo que pasa es que este archivo lo tenia para uso personal con algunas columnas mas y se me olvido corregir el rango cuando las elimine. Subo el archivo con la corrección, gracias por avisar. Saludos.
  6. 2 points
    Haplox

    Texto Inclinado

    Pues esto ni me lo imaginaba
  7. 2 points
    Aquí tienes "todas" las respuestas para iniciarte en VBA. Tutorial VBA
  8. 2 points
    Hola! Otro método mas, pero sin usar COPY Sub Copiar_() vuf = Hoja2.Range("C" & Rows.Count).End(xlUp).Row + 1 With Hoja1 For Each cel In .Range("C5:C" & .Range("C" & _ .Rows.Count).End(xlUp).Row).SpecialCells(12, 2) vid = Application.CountIf(Hoja2.Range("B:B"), .Cells(cel.Row, "B")) If vid = 0 And .Cells(cel.Row, "K") = "SI" Then Hoja2.Cells(vuf, "B").Resize(, 10) = .Cells(cel.Row, "B").Resize(, 10).Value .Cells(cel.Row, "B").EntireRow.Hidden = 1 vuf = vuf + 1 End If Next End With End Sub Saludos
  9. 2 points
    Antoni

    Texto Inclinado

    Inserta la imagen Inserta un cuadro de texto con el texto dentro de ella, sin línea, transparencia 100% Agrupa ambos objetos y gíralos a voluntad
  10. 2 points
    Gerson Pineda

    Conectar Excel con otro libro Excel

    Como tu pregunta es general, también puedes leer datos de libro cerrado con Power Query, pero como dice Avalencia, no es que haya una macro para cada cosa y todo depende del tema en concreto Saludos a ambos!
  11. 2 points
    Antoni

    useforms

    Tutorial de VBA /Macros y formularios)
  12. 2 points
    Antoni

    Validar en funcion de un Option button

    También valdría, suponiendo que sea eso lo que quieres: If OptionButton1.Value = True And (TextBox8 = "" Or Modelo = "" Or Tipo = "" Or Longitud = "" Or Ubicacion = "") Then UserForm6.Show Exit Sub End If
  13. 2 points
    DiegoPC

    Mostrar u Ocultar hojas en un libro

    Hola Claro que sí se puede. Sub Cambiar_Visibilidad_hojas() ActiveWindow.DisplayWorkbookTabs = Not ActiveWindow.DisplayWorkbookTabs End Sub
  14. 2 points
    johnmpl

    Problema de formulas Min & Max para fechas

    Jejeje... confundí los números... eso me pasa por hacerlas manualmente... Aquí va de nuevo: =AGREGAR(15;6;Tareas[Inicio]/([@Proyecto]=Tareas[Proyecto]);1) =AGREGAR(14;6;Tareas[Fin]/([@Proyecto]=Tareas[Proyecto]);1) ¡Bendiciones!
  15. 2 points
    Hola! Una opción mas podría ser esta formula matricial =UNIRCADENAS(CARACTER(10),,SI($A$2:$A$10=$D2,$B$2:$B$10,"")) Compatible con Office 365 y 2016 actualizada Saludos a ambos
  16. 2 points
    Qué tal @Mmat, Te dejo una solución. El problema es que mediante el método normal de "Selected" en el listbox, solo se puede hacer con un registro seleccionado (al menos yo nunca he encontrado solución), por lo que hay que dar un poco de vueltas En el formulario tienes un botón para eliminar registros y puedes seleccionar los que necesites borrar. Dejo el código por si le sirve a alguien más: Private Sub CommandButton2_Click() Dim tabla As ListObject Dim fila As Range Dim filas() As String Dim i& Dim item 'ESTABLECEMOS LA TABLA ' Set tabla = Sheets("Materiales").ListObjects("TMateriales") 'CONTAMOS CUANTOS HEMOS SELECCIONADO ' For i = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(i) Then contador = contador + 1 End If Next i 'COMPROBAMOS QUE TENEMOS AL MENOS UN DATO SELECCIONADO ' If contador = 0 Then MsgBox "Debe seleccionar al menos un registro a eliminar", vbInformation, "Eliminar registros" End If 'REDIMENSIONAMOS LA MATRIZ PARA LOS ELEMENTOS SELECCIONADOS ' ReDim filas(1 To contador) j = 1 'RECORREMOS EL LISTBOX, Y LOS SELECCIONADOS LOS PONEMOS EN LA MATRIZ ' For i = ListBox1.ListCount - 1 To 0 Step -1 If ListBox1.Selected(i) Then ped = ListBox1.List(i, 0) filas(j) = ped j = j + 1 End If Next i 'CADA ITEM, LO BUSCAMOS EN LA TABLA Y LO ELIMINAMOS ' For Each item In filas With tabla Set fila = .DataBodyRange.Columns(1).Find(item) fila.EntireRow.Delete End With Next item 'LIMPIAMOS MEMORIA ' Set tabla = Nothing: Erase filas End Sub Planilla
  17. 2 points
    johnmpl

    Concatenar en una sola celda masivamente

    ¡Hola, @CarlosKurt! Dejo una opción en el adjunto. ¡Bendiciones! PRUEBA (1).xls
  18. 2 points
    johnmpl

    Repartir según costes, vol2

    ¡Hola, @visavis! Según parece, en esa ocasión no viste mi aporte, el cual sin problemas podrías haber extrapolado a una cantidad mayor de variables. Me tomé el trabajo de darle una segunda mirada, y mejoré la formulación correspondiente. Revisa el adjunto detenidamente. ¡Bendiciones! Repartos.xlsx
  19. 2 points
    Haplox

    Organizando Excel

    Como no dices nada @SpheXz, te dejo una solución: Separa las horas por tu criterio Cada hora corresponde con su celda original, para poder relacionarlo con el accidente Se aplica un formato condicional, para que las que sean distintas de "0" (sin datos), se rellenen de verde Está hecho con una macro que está en el archivo. Prueba y comenta Sub separar_horas() Dim horas1 As New Collection Dim horas2 As New Collection Dim horas3 As New Collection Dim horas4 As New Collection Dim i&, uF& Dim hora As Date Dim madr() As Date, mañ() As Date, trd() As Date, noch() As Date 'REDIMENSIONAMOS MATRICES HASTA LA ÚLTIMA FILA CON DATOS ' uF = Range("A" & Rows.Count).End(xlUp).Row ReDim madr(1 To uF): ReDim mañ(1 To uF): ReDim trd(1 To uF): ReDim noch(1 To uF) i = 2 'CONTADOR DE CELDAS Y MATRICES ' Do While Cells(i, "A") <> "" 'RECORREMOS LAS CELDAS DE LAS HORAS ' hora = Cells(i, "A") 'RELLENAMOS LAS MATRICES SEGÚN LAS HORAS ' Select Case hora Case "00:00" To "05:59" madr(i - 1) = Cells(i, "A") Case "06:00" To "11:59" mañ(i - 1) = Cells(i, "A") Case "12:00" To "17:59" trd(i - 1) = Cells(i, "A") Case "18:00" To "23:59" noch(i - 1) = Cells(i, "A") End Select i = i + 1 'AUMENTAMOS EL CONTADOR ' Loop 'INSERTAMOS LAS 4 COLUMNAS Range("B:E").EntireColumn.Insert 'PASAMOS LOS DATOS DE LAS MATRICES A SUS COLUMNAS Range("B1") = "MADRUGADA" Range("B2").Resize(uF - 1, 1) = Application.Transpose(madr) Range("C1") = "MAÑANA" Range("C2").Resize(uF - 1, 1) = Application.Transpose(mañ) Range("D1") = "TARDE" Range("D2").Resize(uF - 1, 1) = Application.Transpose(trd) Range("E1") = "NOCHE" Range("E2").Resize(uF - 1, 1) = Application.Transpose(noch) 'APLICAMOS EL FORMATO CONDICIONAL ' Range("B2:E" & uF).FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="=0" Range("B2:E" & uF).FormatConditions(Range("B2:E" & uF).FormatConditions.Count).SetFirstPriority With Range("B2:E" & uF).FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 5287936 .TintAndShade = 0 End With Range("B2:E" & uF).FormatConditions(1).StopIfTrue = False Erase madr: Erase mañ: Erase trd: Erase noch End Sub edit.xlsm
  20. 2 points
    Haplox

    Organizando Excel

    ¿Puedes sunir tu archivo con las horas reales? Quizás se pueda hacer algo con macros .Por cierto, juraría que te dejé el archivo con las regiones Copia de edit.xlsm
  21. 2 points
    itzy alonso

    modo tactil

    Version 1.0.0

    21 downloads

  22. 1 point
    Hagamos algo prueba mi aporte y luego, nos avisas ¿te parece?
  23. 1 point
    avalencia

    Error macro de enviar correo outlook

    Hola otra vez El archivo que has colocado por aquí ¿es el que te da el error o en realidad solo es un extracto? Yo sospecho lo segundo. De ser así, será mejor que compartas todo el archivo. Mientras lo haces, sugiero que en la(s) PC en donde te da el error, abras las referencias de VBA y veas cuál o cuáles están apareciendo precedidas de la palabra "Missing" y/o "Falta" (sospecho que usas otros objetos no mencionados). Errores de referencias suelen marcar líneas en donde están instrucciones como "Environ", "Format", "Right", etc. Abraham Valencia
  24. 1 point
    Gerson Pineda

    Calculo al redondear

    Yo no se, pero a mi me da el resultado, de manera simple, seguro te haz complicado mucho sin darte cuenta Revisa el adjunto Saludos Redondeo_GP.rar
  25. 1 point
    Silvia

    Calculo al redondear

    Claro, te doy toda la razón, siempre y cuando el tal sentido no haga sentir mal a las personas, sin ningún motivo, causa , razón o circunstancia, debidamente justificada. En todo caso un poco de sentido del humor de la mano con el sentido común.. un abrazo, Silvia
  • Newsletter

    Want to keep up to date with all our latest news and information?

    Sign Up
×

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.