Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 08/19/2021 in Posts

  1. Hola pinoji, Tambien estoy aprendiendo y la ayuda que te dí, creeme lo aprendi aqui si tus primeras dudas ya se solucionaron, seria bueno que lo des por concluido y solucionado, y abras otro tema con tus otras consultas. eso ayuda a que otro foristas encuentren soluciones a sus casos y tambien ayuda a que otro foristas expertos nos puedan ayudar a resolver lo que necesitemos.. estamos en contacto
    3 points
  2. generador de datos aleatorios
    2 points
  3. Sergio

    QUE PASO EN EL FORO

    El inconveniente está solucionado desde hace unos días. Disculpa la molestia.
    2 points
  4. Sub crearHoja() Dim Hoja As String Hoja = "Benito" '<---------- Tu hoja nueva If ExisteHoja(Hoja) Then MsgBox "Ya existe la hoja " & Hoja, vbCritical Else Sheets.Add(After:=Sheets(Sheets.Count)).Name = Hoja MsgBox "Se ha creado la hoja " & Hoja, vbInformation End If End Sub Function ExisteHoja(Hoja As String) As Boolean For h = 1 To Sheets.Count If Sheets(h).Name = Hoja Then ExisteHoja = True Exit Function End If Next h End Function
    2 points
  5. Hola, La mejor forma es que cada usuario instale el Google Drive en cada PC. Luego usted comparte la carpeta con los archivos que quiere que los otros usuarios tengan. Sus cambios se suben al Drive y luego se sincronizan en los otros equipos. Cada usuario tiene los archivos en forma "Local" Consulte sobre el uso de Google Drive. Saludos.
    2 points
  6. Sub Desordenar() Application.ScreenUpdating = False Range("A:C").Copy Range("F:H") Columns("D").Clear x = Range("A" & Rows.Count).End(xlUp).Row filas = 2 Do Until filas > x fila = Int(Rnd * x) + 1 If fila > 1 Then If Range("D" & fila) = "" Then Range("D" & fila) = "x" Range("A" & fila).Resize(1, 3).Copy Range("F" & filas) filas = filas + 1 End If End If Loop Range("F:I").Cut Range("A:D") End Sub Peo mejor usar la macro de Gerson.
    2 points
  7. Hola! Tomando de base tu archivo, ahí te va esta versión Sub DesOrdenar() With Range("A2", Range("A1").End(xlDown)).Offset(, 3) .Formula = "=Rand()" Range("A1").Sort Range("D1"), xlAscending, , , , , , xlYes .ClearContents End With End Sub Saludos a ambos!
    2 points
  8. Me alegro mucho pero la forma de agradecer a quien te ayuda o intenta ayudar es mediante el corazoncillo que hay en la parte inferior derecha, un saludo
    2 points
  9. Sub Importar_Fichero() Dim Archivo As Variant Dim Examinar As Object '-- ChDir ThisWorkbook.Path Set Examinar = Application.FileDialog(msoFileDialogFilePicker) With Examinar .AllowMultiSelect = True .Title = "Seleccionar archivos a consolidar" If .Show = -1 Then Sheets("Hoja1").Range("A2:AO" & Rows.Count).ClearContents For Each Archivo In .SelectedItems ConsolidarArchivo Archivo Next Sheets("Hoja1").Activate MsgBox "Carga completada" End If End With End Sub '--------------- Private Sub ConsolidarArchivo(Archivo As Variant) Application.ScreenUpdating = False Application.StatusBar = Archivo With ThisWorkbook.Sheets("Hoja1") Fila = .Range("A" & Rows.Count).End(xlUp).Row + 1 Workbooks.Open Archivo Range("A2:AO" & Range("A" & Rows.Count).End(xlUp).Row).Copy .Range("A" & Fila) End With Application.StatusBar = False ActiveWorkbook.Close End Sub
    2 points
  10. 2 points
  11. Sub CopiarMúltiple() Application.ScreenUpdating = False Range("C3:I7").Copy For x = 12 To 4998 Step 9 Range("C" & x).PasteSpecial xlPasteAll Next Application.CutCopyMode = False End Sub
    1 point
  12. Sub Concatenar() Dim fn As Long uFila = Range("H" & Cells.Rows.Count).End(xlUp).Row pFila = 1 For fila = pFila + 1 To uFila fn = Range("I" & fila) Range("O" & fila) = Range("H" & fila) & fn Next fila End Sub
    1 point
  13. Range("B2:B" & ActiveSheet.UsedRange.Rows.Count) = "DIGITAL"
    1 point
  14. ENE FEB MAR ABR MAY JUN JUL AGO SEP OCT NOV ANTEPE… PENULT… ULTIMO 23 43 253 46 437 47 4 564 3 45 564 3 45 28 48 5 258 51 442 52 9 569 8 50 569 8 50 33 53 10 263 56 447 57 14 574 13 55 574 13 55 38 58 15 268 61 452 62 19 579 18 60 579 18 60 formulas de la fila 3 Antepenultimo DESREF($A$1,FILA(A3)-FILA(A$1),CONTARA($A$1:$K$1)-3) Penultimo DESREF($A$1,FILA(A3)-FILA(A$1),CONTARA($A$1:$K$1)-2) Ultimo DESREF($A$1,FILA(A3)-FILA(A$1),CONTARA($A$1:$K$1)-1)
    1 point
  15. Yo sigo investigando y contestándome solo Al final lo saco ya veras!!!!!!!!! Al parecer, es complicado el copiado y pegado de celdas con formato condicional, pero he encontrado un truco chapucero pero efectivo y consigo lo que necesito. He añadido el siguiente código y funciona!!!! Sub CompararCeldas() Sheets("Resultado").Select Rows("1:1").Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Range("B2").Select Sheets("Resultado").Range("B2").AutoFilter Field:=2, Criteria1:=RGB(255, _ 199, 206), Operator:=xlFilterCellColor Range(Selection, Selection.End(xlDown)).Select With Selection.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 10066431 .TintAndShade = 0 .PatternTintAndShade = 0 End With ActiveSheet.ShowAllData Columns("B:B").Select Selection.Copy Range("C1").Select ActiveSheet.Paste Application.CutCopyMode = False Selection.AutoFilter Rows("1:1").Select Selection.Delete Shift:=xlUp Columns("A:B").Select Selection.Delete Shift:=xlToLeft Range("D8").Select Columns("A:A").EntireColumn.AutoFit End Sub Si lo termino mañana lo subo aquí mismo funcionando por si le puede ser de utilidad a alguien. Un saludo.
    1 point
  16. Yo no me preocuparía demasiado, es que además, para media docena de notas.....
    1 point
  17. En cuanto al funcionamiento, las he probado y ambas funcionan con texto y números Si aun no lo notas, mis 2 métodos, son dinámicos, es decir no importa la cantidad de filas y columnas a procesar, para unir las celdas, además que ignora automáticamente cualquier celda vacía Respecto a la aplicación que utilizo para mostrar una demo, se llama Licecap La función UNIRCADENAS la pude ver disponible en 2016, pero creo que MS por alguna razón la eliminó, solo esta en 365 y 2019 como posterior Saludos!
    1 point
  18. Hola juanmanuel85 . Puedes usar una pequeña tabla, ejemplo: 1 7500 2 5000 4 3500 7 2500 12 1500 Y luego una fórmula: =BUSCAR(F20;rangodehoras;rango de valor de horas) Saludos.
    1 point
  19. Hola a ambos Adjunto 2 alternativas con VBA Saludos Concatenar celdas VBA_GP.xlsm
    1 point
  20. JSDJSD

    Macro función Unircadenas

    Sube tu archivo, y pon un ejemplo
    1 point
  21. En Access: Left(Numero,6)
    1 point
  22. Jorge12321

    Unir tablas

    Gracias!! eres un grande!
    1 point
  23. Hola, estas intentando insertar una imagen ".svg", la cual no es un formato soportado por excel, si usas png o jpg u otro formato soportado funcionaria bien, ahora si lo que vos estas buscando es realmente usar .svg vas a tener que depender de alguna libreria externa para convertirla, para ellos tendrías que descargarla al disco, realizar la conversión y luego leerla desde excel, En una de las actualizaciones de windows 10 ("Windows 10 Creators Update") es posible hacer una conversión mediante WIC, es todo un código muy complejo, otra opción podría ser mediante la librería de Cairo. pero ninguna opción es simple.
    1 point
  24. Increible Gerson es un tema muy avanzado, funciona estupendo lo repasare y analizare... Mil gracias, cuidate, Bendiciones.
    1 point
  25. Millones de gracias Amigo, resuelto el tema felizmente para mi. Super agradecido. Que tengan una excelente tarde Peagones1.
    1 point
  26. Hola, @Antoni al final lo conseguí ;). Directamente en la misma hoja y en la misma tabla. He modificado el código un poco: 'una vez que filtramos por C ejecuto la macro Sub OrdenarFiltro() Application.ScreenUpdating = False With Hoja1 .UsedRange.Sort Key1:=.Columns("C"), Key2:=.Columns("B"), Header:=xlYes .Select End With End Sub 'después quito el filtro y todo genial. Muchísimas gracias por la idea ;).
    1 point
  27. Hola María Ya @Antoni te ha dado varias opciones que se pueden hacer... Pero la pregunta es, para que deseas hacer ese proceso, luego que, ¿lo vas a copiar a otro lugar? Saludos
    1 point
  28. Utiliza Cells(x,).Text en lugar de Cells(x,y).Value
    1 point
  29. Gerson, perfecta la macro. Guay me encantó. Te lo agradezco muchísimo. Un abrazo 👍 👍 👍
    1 point
  30. 😂 😂 😂 Se me olvidó subir el archivo. MAleatorio.xlsm
    1 point
  31. Hola Buen dia Pegones1 estoy impresionado por tu respuesta, Dios te bendiga y multiplique mas tu conocimiento, aqui he aprendido la anulacion de dinamizacion por columnas, muy interesante no lo sabia, en concreto esto es lo que buscaba, Mil gracias. ¿Qué sistema has usado para generar la columna Semana? aqui por lo que preguntas... es una recopilacion de datos en la empresa y todo se hace manual...
    1 point
  32. ' Imprimir actPrnt = Application.ActivePrinter ActiveWindow.SelectedSheets.PrintOut Copies:=1, _ ActivePrinter:="Brother MFC-L2710DW series (Copiar1)", _ Collate:=True Application.ActivePrinter = actPrnt He añadido esta parte al código, sustituye en esta línea el nombre de tu impresora ActivePrinter:="Brother MFC-L2710DW series (Copiar1)", _ prueba y comenta. Diseño2.xlsm
    1 point
  33. Te refieres que este mismo reporte te lo imprima en papel verdad?
    1 point
  34. uf = Sheets("Sheet5").Range("A" & Rows.Count).End(xlUp).Row Sheets("Sheet5").Range("K2:L" & uf).NumberFormat = "dd/mm" Prueba y comenta
    1 point
  35. Hola, Excel permite soluciones para todos los "gustos", algo sencillo y directo, incorporado con el Excel son las tablas dinámicas. Adjunto puede ver una propuesta, solo se necesita que la EDAD este en un campo que depende de la fecha de hoy, =HOY() y la fecha de emisión. Edades facturas.xlsx
    1 point
  36. Sub OrigenToDestino() Sheets("origen").Range("A2:F" & Sheets("origen").Range("A" & Rows.Count).End(xlUp).Row).Copy _ Sheets("destino").Range("A" & Sheets("destino").Range("A" & Rows.Count).End(xlUp).Row + 1) End Sub
    1 point
  37. Set celda = Columns("D").Find(número, , ,xlWhole)
    1 point
  38. Prueba y comenta Diseño2.xlsm
    1 point
  39. @nickmartinez, si aún estás interesado en una solución, dame acceso a Google Drive o intenta adjuntar el archivo de nuevo... Salu2, Pedro Wave
    1 point
  40. @paulazoffoli creo que la cátedra de @GabrielRaigosa es una excelente opción, pero si insistes en tu formato puedes obtener la los promedios de cada SI/NO con la formula =CONTAR.SI(C4:C8;"NO"), =CONTAR.SI(C4:C8;"SI"), sumas el total con =CONTARA(C4:C8) y sacas el promedio, pero insisto la opción de Gabriel es mucho más acertada, Saludos,
    1 point
  41. Si utilizas el nombre del objeto VBA debes hacerlo así: Hoja1.Range("A1")="Hola" Si quieres utilizar el nombre de la hoja debes utilizar el objeto Excel Sheets("Auxiliar").Range("A1")="Hola"
    1 point
  42. pegones1

    Juego Atrapa la Bola

    Gracias por probarlo en esa versión. Añadí la posibilidad de cambiar de velocidad porque la bola es mucho más rápida en Excel 2010 que en versiones modernas.
    1 point
  43. pegones1

    Juego Atrapa la Bola

    ⛱ He programado un nuevo juego para pasar un buen rato este verano atrapando bolas sin salir de Excel. © Como no puedo adjuntarlo en el subforo de "Ideas y Aportes", quisiera que descargaras el nuevo juego "Atrapa la Bola" desde mi blog: Catch the Ball Game - Juego Atrapa la Bola y decirme si funciona en tu versión de Excel. 🎴 Con este juego del verano puedes aprender a programar macros VBA de una manera diferente a cómo las usas en la oficina. Y también aprenderás trucos para avanzar en tus conocimientos de Excel. 😏 Si alguien te mira por encima del hombro mientras juegas, puedes ocultar el juego con un solo clic del ratón. 🚮 A ver si sabes decirme cómo ocultar el juego de miradas indiscretas en un comentario...
    1 point
  44. torquemada

    Juego Atrapa la Bola

    Hola Pedro. No había leido este mensaje. El juego está muy bien, lo he probado en la versión de excel 2016 64bits. clicando con el botón derecho, queda la hoja vacía, con una tabla. Saludos.
    1 point
  45. Jlmdesign

    sistema control vehicular

    Hola shahuinto!!! Muy bueno lo que hiciste con el SISTEMA EN EXCEL PARA CONTROLAR VEHÍCULOS (MANTENIMIENTO, COMBUSTIBLE Y CHOFERES). Me gustaria modificarlo para seguir aprendiendo. Y que posibilidades tengo?? Gracias Juan
    1 point
  46. Antoni

    BUSCAR NOMBRE HOJA

    If UCase(Sheets(cont).Name) Like "*" & UCase(nombreHoja) & "*" Then
    1 point
  47. Hola @Leonardo Briceño, en este caso seria convertir tanto la búsqueda como el nombre de las hojas a mayúsculas independientemente de como estén escritas: Sub BuscarNombreHoja() Application.ScreenUpdating = False Dim existe As Boolean Dim nombreHoja As String Dim cont As Integer nombreHoja = UCase(InputBox("INGRESE EL NOMBRE DE LA HOJA")) existe = False For cont = 1 To Worksheets.Count If UCase(Worksheets(cont).Name) Like "*" & nombreHoja & "*" Then existe = True Exit For End If Next If existe = False Then MsgBox "NO SE ENCONTRÓ EL NOMBRE INGRESADO!" Else Sheets(Worksheets(cont).Name).Select End If End Sub Lo logras con UCASE(). Saludos
    1 point
  48. Antoni

    Comparar dos hojas

    Hola a todos: Aquí os dejo un libro con dos formularios para comparar 2 hojas: Al abrir el libro, se presenta un menú con 2 opciones: 1ª Opción - ESCOGER HOJAS Al pulsar la flecha en rojo, se abrirá un formulario donde se pedirá la localización de las dos hojas a comparar. Se pueden compara hojas del mismo libro o de distinto libro. Al pulsar el botón "Comparar hojas", si todo está correcto, la hoja seleccionada como PRIMERA, se copiará en la hoja "Primera" de este libro, y la seleccionada en como SEGUNDA, se copiará a la hoja "Segunda". Se cierra el formulario, se activa la hoja "Primera", y se ejecuta el formulario COMPARAR HOJAS. Los libros utilizados para seleccionar las hojas, se utilizan solamente para copiar las hojas y una vez realizada la copia, se cierran y ya no vuelven a ser utilizados. 2ª Opción - COMPARAR HOJAS Al pulsar la flecha en rojo, se muestran las diferencias encontradas en la hoja Activa. Si la hoja activa es la hoja "Primera", se mostrarán las diferencias en esa misma hoja con respecto a la hoja "Segunda". Si la hoja activa es la hoja "Segunda", se mostrarán las diferencias en esa misma hoja con respecto a la hoja "Primera". Las diferencias, se muestran como comentarios en la celda. Se pueden buscar diferencias en datos y en formulas de forma independiente. Las diferencias, se muestran también en una lista ordenada por fila y columna, pulsando sobre el label de la cabecera de la lista, se invierte el orden columna/fila por fila/columna y viceversa. Pulsando sobre cualquier elemento de la lista, se seleccionará la celda con diferencias y se mostrará el comentario con el valor de la misma celda correspondiente a la otra hoja. Como siempre, se esperan comentarios y propuestas de mejora. Saludos. Antoni. DiferenciasEnHojas.zip
    1 point
  49. Antoni

    Comparar dos hojas

    Hola: La respuesta es si a ambas preguntas. Saludos.
    1 point
×
×
  • Create New...

Important Information

Privacy Policy