Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Today
  3. Hola, que tal están. De nuevo con ustedes para ver si me pueden ayudar a solucionar este problema. tengo un código que cuando busco por un numero en el text dentro de la pagina, me envía el resultado que coincide a otro text, el problema lo tengo al cargar la imagen, he probado varias ideas y no me funcionan Les agradezco de antemano su ayuda, muchas gracias Set h = Sheets("Empleados") Set b = h.Columns("D").Find(TextBox3) If Not b Is Nothing Then TextBox4 = h.Cells(b.Row, "A") Fotografia = h.Cells(b.Row, "C") End If
  4. Hola muy buen dia, les escribo para solicitar su valiosa colaboracion, tengo un formulario en el cual estoy tratando de hacer un rol de trabajo ¿como se da la ejecucion de este rol de trabajo?, pues deacuerdo a la lista de personal necesito que se siga ese orden y el formulario vaya llenando huecos consecutivamente hacia abajo (como se ve en la hoja), les dejo el archivo para ver si me doy a entender. de antemano agradezco la atencion al presente. saludos roldeturnosdetrabajo.xlsm
  5. Revise y en un icono con macro estaba la vinculo Gracias Tema cerrado
  6. Lo solucione con la siguiente línea rs.Open Sql, Conexion If rs.EOF Then MsgBox "No se encontraron registros." Exit Sub End If Lista.Column = rs.GetRows Disculpen las molestias
  7. Tengo un nuevo problema. Cuando no encuentra registros me salta el error 3021 "el valor de bof o eof es true o el actual registro se elimino". este es el código que estoy manejando Private Sub CommandButton1_Click() Application.ScreenUpdating = False Application.DisplayAlerts = False Dim Base As String Dim Sql As String Dim rscopy As String 'E:\Dropbox\MIS PROGRAMAS\ACCES\Buscador de Precios 64 bits 9-4-19.accdb Dim Conexion As String Conexion = "PROVIDER=MICROSOFT.ACE.OLEDB.12.0;DATA SOURCE =" & txtruta.Value & ";PERSIST SECURITY INFO FALSE;" 'uf2 = Sheets("ACCES").Range("I" & Rows.Count).End(xlUp).Row 'Sheets("ACCES").Range("B11:I" & uf2).Clear 'LLAMAMOS AL OBJETO ADO Set cn = New ADODB.Connection 'ABRIMOS LA CONEXION cn.Open Conexion 'CREAMOS LA CONSULTA Set rs = New ADODB.Recordset With rs .CursorLocation = adUseClient .CursorType = adOpenStatic .LockType = adLockOptimistic End With 'Consulta = Consulta & " WHERE " & Me.cmbCampo & " Like '*" & Me.txtBusqueda.Text & "*'" 'Sql = "SELECT * FROM Personas where Descripción like " & "'%" & Range("D6") & "%'" 'Like Replace("'%" & UCase(txtBusqueda.Value) & "%'", " ", "%") And 'Sql = "SELECT * FROM Personas where Descripción like " & "'%" & txtBusqueda & "%'" ''cmbCampo.value' If cmbCampo.Value <> "" Then Sql = "SELECT * FROM Personas where Descripción like " & Replace("'%" & UCase(txtBusqueda.Value) & "%'", " ", "%") & "AND Proveedor = " & "'" & cmbCampo.Value & "'" Else Sql = "SELECT * FROM Personas where Descripción like " & Replace("'%" & UCase(txtBusqueda.Value) & "%'", " ", "%") End If rs.Open Sql, Conexion Lista.Column = rs.GetRows 'Range("B11").CopyFromRecordset rs 'uf = Sheets("ACCES").Range("I" & Rows.Count).End(xlUp).Row 'Me.Lista.RowSource = "ACCES!B11:I" & uf cn.Close rs.Close Set rs = Nothing Set cn = Nothing Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub Desde ya muchas gracias. saludos
  8. El Procedimiento AgruparDatosZ_GP se desborda... creo que con solo cambiar las variables de enteros a long todo se resuelve. El procedimiento AgruparDatosMatriz_GP va genial... 40 mil lineas en un segundo, pero cuando se intenta con mas de 42 mil registros da error. Saludos!
  9. los vínculos de un libro pueden ser un objeto no tan sencillo de localizar ya que el abanico de orígenes y ubicaciones es extenso (p.ej.) si copias hojas entre libros, "se van con todo" (lo que les es inherente), probablemente también te llevaste nombres, formatos, estilos, etc. (OJO: el "etc." podría incluir el modulo de clase, figuras y objetos con macros asignadas, vínculos externos, validaciones, y mas etc.) saludos, hector.
  10. Saludos estimados Foristas y Masters, me pueden ayudar en lo siguiente: tengo un libro con 50 hojas y al abrirlo me sale que hay vinvulos, he revisado las hojas buscando con buscar "[" "C:"y no me encuentra . Alguna solución o idea. Gracias
  11. Gracias pude resolver con el tema de este link https://es.justexw.com/crea-tu-propio-complemento-de-excel-con-vba.html Tema cerrado solucionado Gracias
  12. Yesterday
  13. Holas! He tenido una semana pesadita [con mi cierre mensual]... Asi es @gonza Vba es un lenguaje muy amplio y rico para Excel, partiendo que puedes usar miles de filas, también se puede trabajar mediante matrices como te lo han mostrado, pero ademas algo que debes saber y que te indicaron, es sobre la limitación de las celdas respecto a su contenido y concatenar muchos criterios, te puede resultar en error por esa misma razón Adjunto otro aporte, para tu colección y la del foro Saludos Agrupar datos Matriz VBA_GP.zip
  14. Muchas gracias señor Alexander, Lo probe y funciono! estoy muy feliz, le quiero mucho señor.
  15. graciaa iñaki,, la solucion q implemente fue cambiar integer por long y se arreglo el desbordamiento,, ahora nose si mas adelante causara problemas la macro, aunq ya habia pensando en la q me sugieres, pero no sabia como ubicarla,,,
  16. Hola @giordancisco , tal como lo indica avalencia no puedes utilizar un RowSource en un listbox utilizando como fuente un recorset, pero puedes utilizar la siguiente instrucción: sql = "Tu consulta" rs.Open Sql, Conexion ListBox1.Column = Rs.GetRows Con esto no hay nesecidad de utilizar un bucle para llenar el listbox Saludos.
  17. Hola, Sacado de la ayuda de MsOffice... Se produce un desbordamiento cuando se intenta crear una asignación que excede los límites del destino de la asignación. - El resultado de una asignación, cálculo o conversión de tipo de datos es demasiado grande como para que se pueda representar dentro del rango de valores permitidos para ese tipo de variable. Ejemplo : Dim x As Long x = 2000 * 365 ' Error: Overflow solución x= CLng(2000) * 365 Con la información que das no es posible darte mas ayuda. Espero te sirva
  18. Muchas gracias por tu ayuda, amigo Gerson, tu solución me sirvio Tema solucionado
  19. Mil disculpas me confundí de hilo, lo tenia abierto en la pestaña de al lado. Era esta direccion: Casualmente Antoni también había respondido. Recién me doy cuenta que ese hilo esta cerrado. Si pueden eliminar estos mensajes mejor. Gracias y nuevamente disculpas.
  20. Antoni podrías explicar paso a paso lo que hiciste en el código de ordenar los datos? o sea que significa cada línea de codigo. Muchas gracias! Private Sub OrdenarLista() With ListBox1 ListBox2.List = .List .Clear Do Until ListBox2.ListCount = 0 x1 = 0 For x2 = 0 To ListBox2.ListCount - 1 If ListBox2.List(x2, 1) < ListBox2.List(x1, 1) Then x1 = x2 Next .AddItem For y = 0 To 4: .List(.ListCount - 1, y) = ListBox2.List(x1, y): Next ListBox2.RemoveItem (x1) Loop End With End Sub
  21. Last week
  22. Solo me doy las 3 (Lenguaje de Chamaco, disculpa si no entiendes.), como aquí en VBA-Excel. Pues si, pero el problema no es el Lenguaje de Programación... el problema es @gonza, ya que por lo visto no entiende ni lo que le compartimos, el solo copia y pega, eso creo yo. Y no es malo pero hay que estudiar un rato para entender y hacer cosas por uno mismo. Saludos.
  23. @Leopoldo Blancas eres programador Python? Sin duda es una buena alternativa al igual que Ruby (el cual se me hace mas elegante). Pero creo que una mejor alternativa para este problema es AWK... Sobre todo para procesar archivos de texto, incluso aquellos que excedan el millón de registros. BEGIN {FS="\t"} { if (NR > 1) { llaves[$1]++; for(i=2; i<=NF; i++) datos[$1,i] = datos[$1,i] $i ", " } } END {for(llave in llaves) { reg = llave "\t" for(j=2; j<=4; j++) reg = reg "\t" substr(datos[llave,j],1,length(datos[llave,j])-2) print reg } } Saludos!
  24. gracias por responder, voy a intentar abrir un buscador vba formulado en acces desde el formulario de excel si es posible.
  25. Ya que hay para escoger... escoge la que mas te plazca... Nota: A mi no me da error en ninguna, solo que no exista la hoja... entonces si hay error.
  26. Gracias Leopoldo, las dos primeras opciones funcionan a la perfección. En la última opción me da error en la línea "Worksheets(Hoja1.Cells(n, 1)).Range("C3:AA3") = Hoja1.Cells(n, 1).Offset(0, 1)" Así que utilizaré la segunda. Te agradezco mucho tu ayuda. Un saludo UDK
  27. Sub CopyClave2_LBV() Dim n% n = 6 Do While Hoja1.Cells(n, 1) <> Empty Worksheets(Hoja1.Cells(n, 1)).Range("C3:AA3") = Hoja1.Cells(n, 1).Offset(0, 1) n = n + 1 Loop End Sub
  28. Sub CopyClave2_LBV() Dim n%, cHoja$ n = 6 Do While Hoja1.Cells(n, 1) <> Empty cHoja = Hoja1.Cells(n, 1) Worksheets(cHoja).Range("C3:AA3") = Hoja1.Cells(n, 1).Offset(0, 1) n = n + 1 Loop End Sub
  1. Load more activity
×
×
  • Create New...

Important Information

Privacy Policy