Jump to content

AlexanderS

Moderators
  • Content Count

    1,378
  • Joined

  • Last visited

  • Days Won

    57

AlexanderS last won the day on November 5

AlexanderS had the most liked content!

About AlexanderS

  • Rank
    Riddle
  • Birthday 08/22/1990

Profile information

  • Gender
    Hombre
  • Localización:
    Costa Rica

Converted

  • Campos
    ,
  • Mi versión de Excel:
    0

Recent Profile Visitors

6,478 profile views
  1. Hola Alexander, hice una consulta pero nadie contesta, por si pudieras ayudarme por favor.  Mil gracias.

  2. @Leonardo Briceño Pura vida!! A mi no me pasa lo que indicas, pero de igual forma puedes probar solo des protegiendo la hoja cuando confirmas la eliminación de esta forma no deberías ver las formulas cuando se muestren los cuadros de mensaje. Sub BorrarCeldas(): On Error GoTo ExitSub Set CeldaDestino = Application.InputBox("SELECCIONE LA CELDA CON EL NOMBRE QUE DESEA ELIMINAR", _ "BORRAR - SELECCIONE CELDA", Type:=8) Application.ScreenUpdating = False CeldaDestino.Worksheet.Select CeldaDestino.Select If Msg
  3. @Leonardo Briceño, por lo que veo no estas volviendo a proteger la hoja luego de eliminar, solo la proteges si se cancela. Así debería funcionar: Sub BorrarCeldas(): On Error GoTo ExitSub ActiveSheet.Unprotect Password:="123" Set CeldaDestino = Application.InputBox("SELECCIONE LA CELDA CON EL NOMBRE QUE DESEA ELIMINAR", _ "BORRAR - SELECCIONE CELDA", Type:=8) Application.ScreenUpdating = False CeldaDestino.Worksheet.Select CeldaDestino.Select If MsgBox("DESEA ELIMINAR EL NOMBRE " & ActiveCell.Value, vbQuestio
  4. 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
  5. Hola @paikerr intenta así: Dim rango As Range Set rango = Range(Columns(1), Columns(6)) If IsNull(rango.OutlineLevel) Then rango.Ungroup Comentas, saludos.
  6. Que tal @fx.ingenieria, bienvenido al foro, te comento que puedes realizar tus consultas en el hilo de excel general (Formulas,etc) o en el de macros y VBA. Espero que el foro te sea de tanta ayuda como ha sido para mi. Pura vida!!, saludos desde Cartago.
  7. Pero probaste abrir el archivo y ejecutar la macro?, el error 1004 regularmente es porque un nombre no definido o alguna comilla faltante etc.
  8. Un gusto @Sergio, sinceramente no sabría recomendarte alguna pagina o vídeo en concreto, la cinta que vez arriba la hice con una recopilación de paginas y un poco de prueba y error. Pero te aseguro que no es tan complicado como parece, seguro que con leer un poco de la documentación del programa le agarras el tiro https://bettersolutions.com/vba/ribbon/custom-ui-editor.htm Saludos.
  9. @RadioViraje73, correcto la instrucción copiara los datos en columnas contiguas, entonces tienes algunas opciones: 1 utilizar un ciclo while para leer cada columna de tu tabla individualmente o 2 realizar una consulta a por cada columna para poder utilizar el .CopyFromRecordset, algo como esto: Columnas = Array("FECHA", "PAGADO", "DEBE") For Each param In Columnas Sql = Replace("SELECT ? FROM [Datos$] where (FECHA BETWEEN #1/1/2020# and #31/3/2020#) and DEBE >0", "?", param) Rst.Open Sql, cn, 3, 3 Select Case param Case Is = "FECHA": Sheets("Resultado").Range("A2").CopyFromRecordset
  10. Hola @joselica, en este caso no es necesario tratar cada celda individualmente, revisa el adjunto y comentas. Saludos COLOR CELDAS (1) Ucase o Lcase.xlsm
  11. Hola @joselica, prueba el adjunto. Saludos COLOR CELDAS (1).xlsm
  12. Hola @Jeison Segura, debes subir algún ejemplo con tu código para entenderte ya que no todos conocemos de SAP y aun menos como funciona tu archivo. Saludos
  13. Hola @RadioViraje73, no es necesario recorrer con un ciclo while un recordset, puedes copiar los datos directamente a la hoja de excel con la instrucción .CopyFromRecordset Sheets("Hoja1").Range("A2").CopyFromRecordset Rst Saludos
  14. Hola @paikerr lo trabajo sin problemas en Office 365 y también lo he probado en versiones 2013,2016,2019 sin problemas. Saludos.
  15. Hola @darkstars9976, prueba este código y me comentas. Sub Copia_recetas() Dim Rng$, x# Dim rept As Range Dim celda With Sheets("BD_Recetas") Rng = .Range("D1") x = 9 For Each celda In Sheets("Proy.-Comer").Range(Rng) If celda <> "" Then Set rept = .Range("C9:C43").Find(celda, , , xlWhole) If rept Is Nothing Then _ .Cells(x, "C") = celda: x = x + 1 End If Next End With
×
×
  • Create New...

Important Information

Privacy Policy