Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 03/28/2020 in all areas

  1. 4 points
    bigpetroman

    ANSWERED formato en textbox

    amigo @pildo asi pudieras hacerlo asi Private Sub ComboBox1_Change() Dim nTiempo As Double On Error Resume Next TextBox1 = ComboBox1.List(ComboBox1.ListIndex, 1) nTiempo = CDbl(TextBox1) * 24 TextBox2 = Int(nTiempo) & ":" & Format((nTiempo - Int(nTiempo)) * 60, "00") End Sub
  2. 4 points
    Hola, te faltó crear nombres.... Selecciona todo el rango J3:Q9 Presiona CTRL+SHIFT+F3 Deben estar marcados los check de fila superior y columna izquierda Aceptas y todo estará bien
  3. 3 points
    Hola. Yo particularmente con la funcion indirecto no se como obtener los resultados. Prueba con esta formula: =INDICE($K$4:$Q$9;SI.ERROR(COINCIDIR(C14;J$4:J$9;0);COINCIDIR(D14;J$4:J$9;0));SI.ERROR(COINCIDIR(D14;K$3:Q$3;0);COINCIDIR(C14;K$3:Q$3;0))) Un saludo.
  4. 3 points
    DiegoPC

    BINGO

    Hola amigo, requiero apoyo para ayudarte en un Bingo poco convencional. Requiero 150 indicaciones de qué es lo que buscas, 30 ideas de cómo lo has pensado y un 30% de avance que demuestre que al menos lo intentaste. Agradezco tu apoyo porque desconozco completamente lo que necesitas. Fuera de bromas... ¿Cómo quieres que te ayudemos si no das detalles? ¿Cómo piensas jugar el bingo? "Poco convencional" se refiere a que es para la clase de matemáticas? ¿Las matemáticas influyen en algo en cómo se hará o jugará este bingo? ¿El Excel que quieres es solo para el sorteo y los cartones los marcan físicamente los jugadores? ¿El Excel debe generar e imprimir los cartones? ¿Envía los cartones por correo? ¿El cartón de bingo es virtual y cada jugador tiene una laptop donde juega? ¿Se juega en red? Hay una infinidad de variantes y solo dices "un bingo poco convencional", eso no ayuda!! Ni siquiera a los de AyudaExcel! Por otro lado, dices que desconoces cómo se usa Excel (y veo que tampoco tienes ganas de aprender a usarlo) entonces ¿por qué hacer tu bingo en Excel, mejor busca una alternativa distinta, ¿alguna web que lo ofreza tal vez?. Recuerda que este foro se llama ayudaexcel.com y no tehacemostrabajosgratis.com, la idea es que tú avances con lo que requieres y nosotros AYUDAMOS con lo que no sepas.
  5. 2 points
    Esto encontré En la parte de 12:30:00<08:50:06 el resultado sale verdadero Entonces lo que hice fue colocar en una columna auxiliar =ESNUMERO(J13) , resultado FALSO. Toda la columna sale FALSO, las horas SON números y lo tienes como texto. Evaluando la columna J, algunos son Textos, otros son Números, la mayoría son números. . Para solucionar, en una columna auxiliar multiplica por 1, lo copias y pegas a valores en sus respectivas columnas, si se pierde el formato, (una vez copiado), puedes dar click derecho en esa columna, formato personalizado , hora y escoges el formato que requieras. Saludos Silvia
  6. 2 points
    Hola Las macros son, digamos, "universales", no es que tengas que programar las cosas para cada país o idioma, los dilemas tienen que ver con otras cosas: - Si tu macro inserta fórmulas, los cambios van por aquí: https://abrahamexcel.blogspot.com/2018/11/insertar-formulas-con-macros.html - Si usas objetos ActiveX que no vienen con todas las versiones de Office, te dará error en algunas PC. Ejemplo: El control DtPicker - Si usas/modificas, a través de macros propiedades de objetos que no hay en versiones más "antiguas". Un ejemplo, los formatos condicionales de hoy en día, no todos son compatibles con Excel 2007 o incluso 2010 . - Si usas funciones de la API de Windows y solo las "llamas" para 32 bits, tendrás problemas con los Excel de 64 bits. Saludos
  7. 2 points
    Jose BN

    FORMULA QUE PINTE CELDAS

    Que tal si subis tu archivo, seguramente podrás recibir una mejor ayuda!
  8. 2 points
    Adjunto ejemplo con lo que creo haber entendido. EXCEL PARA FORMULA.xlsx
  9. 2 points
    Antoni

    Cronograma Gannt

    Revisa el adjunto, a ver si te vale. Vivo en Santiago, aquí tenemos a Oscar en la cafetería Venezia, que está considerado el mejor tirador de cañas de España. En cuanto a lo de Amancio Ortega, por supuesto que se agradece cualquier ayuda, pero este señor tiene una fortuna calculada de 70.000 millones de euros, así cualquiera se convierte en "super héroe" tal como le llaman. Y en cuanto a los amigos de Estrella de Galicia (Familia Rivera), tampoco me parece que haya que exagerar, los cerveceros hemos dejado de tomar la cerveza en el bar, pero la seguimos tomando en casa, con lo cual no creo que hayan tenido que bajar la producción ya que la demanda sigue constante. Parece que hay una campaña general de alabanza a empresarios y banqueros, pero nadie comenta que unos han hecho su fortuna, parte a base de mano de obra barata en el tercer mundo, parte evitando impuestos a base de ingenieria fiscal, parte gracias a un rescate bancario que sumió en la miseria a muchas familias y pensionistas de este pais, justo es que ahora nos devuelvan una parte de aquello de lo que ya se habían apropiado previamente, y ya para terminar, son los primeros interesados en que esto se solucione lo más rápido posible, porqué si no, se les va el invento a hacer puñetas. Eso si, paz, amor y Cronograma extendido.xlsm
  10. 2 points
    Antoni

    ANSWERED formato en textbox

    Prueba el adjunto. paraforo.xlsm
  11. 2 points
    makinavaja

    vsto vs JavaScript

    Gracias @José_Santos miraré todo... Y gracias a @digitalboy @Gerson Pineda @avalencia por contestar.
  12. 2 points
    Hola, Dentro de la misma tabla no se puede hacer, podria usar otra tabla, usando la opcion de recuento distinto. Al momento de hacer la tabla ve una opcion que dice "AGREGAR AL MODELO DE DATOS" Esto permite el conteo de codigos unicos por vendedor, Adjunto ejemplo. Datos.xlsx
  13. 2 points
    el detalle en tu consulta es que usas un estilo de "adivinen lo que estoy pensando" (?) con respecto de tu adjunto... 1) el módulo "de clase" no contiene nada y en tanto no decidas para qué quieres que "sirva", puedes iniciar pesquisas analizando artículos como este (solo por mencionar alguno): - Introduction To Classes 2) en el evento '_click' del commandbutton de tu formulario (BTNBUSCAR) haces un "intento" de llamada a un procedimiento que NO existe: TraerNombre 3) ese "TraerNombre" es el nombre de un módulo de código, que es un "contenedor" de procedimientos, es decir... - un módulo puede contener varios procedimientos siempre y cuando... - a) ningún procedimiento se llame igual a otro (tampoco igual a ningún módulo de código) - b) cualquier procedimiento declarado en módulos normales puede ser asignado a objetos con solo indicar el nombre del procedimiento en una línea u usando el método: => Call nombre_del_procedimiento 4) en ese módulo (TraerNombre) parece que simulaste el traspaso del evento '_click' de un control indefinido de un userform (?) - aquí entrarían los módulos de clase, previa lectura del artículo sugerido (entre otros) - aunque haces referencia al control "TXTBUSCAR" (mismo que SI se encuentra en tu formulario), no es tan "simple" de referir sin calificar sugiero avanzar más lento (programación rutinaria en vba) y después avanzar a los módulos de clase (y mucho más) ?
  14. 2 points
    Antoni

    Omitir funcionamiento de una macro

    En lugar de suprimirlo yo lo cambiaría por Exit Sub. Un abrazo Juan. 🙂
  15. 2 points
    Declara la variable UltFilaTC como Long en vez de Integer. TIPO DE DATOS ABREVIATURA MEMORIA REQUERIDA RANGO DE VALORES EQUIVALENCIA CON USADAS EN PSEUDOCÓDIGO OBSERVACIONES Integer (Entero) % 2 bytes ó 4 bytes según versión - 32768 a 32767 ó -2.147.483.648 a 2.147.483.647 según versión Entero Uso en contadores, control de bucles etc. Long (Entero largo) & 4 bytes ó 8 bytes según versión - 2147483648 a 2147483647 ó -9,2E+18 a 9,2E+18 según versión Entero Igual que integer pero admite un rango más amplio
  16. 2 points
    José_Santos

    Ya se veía venir...

    @digitalboy De momento Office Scripts es de pago, Script Lab es gratuito y también puedes programar Add-Ins desde Visual Studio para cosas más avanzadas (también con una versión gratuita) La mayoría de lo que publico en la nueva sección es con Script Lab porque es lo más sencillo a la hora de empezar, pero también hay algo creado con Visual Studio. Saludos.
  17. 1 point
    Ya lo creo que puede ayudarme bigpetroman, excelente aporte. Por ahí iba yo encaminado, pero sinceramente no fui capaz, aun me falta mucho para llegar a vuestro nivel, pero mi satisfacción personal es que cada día que pasa avanzo un poquito más, gracias. Tema Solucionado.
  18. 1 point
    Saludos amigo @JSDJSD, no creo que te quede perfecto, pero esto podría ayudarte Sub pasarTexto() Dim stexto As String Dim sTempo As String Dim nCont As Integer stexto = TextBox1.Text sTempo = Mid(stexto, 1, 30) Do While sTempo <> "" If Len(Trim(stexto)) <= 30 Then ListBox1.AddItem ajustarTexto(Trim(sTempo), 30) Exit Do Else 'verificamos si el siguiente caracter (el 31) o el 30 'es un espacio, si es asi, colocamos la cadana completa If Mid(stexto, 31, 1) = " " Or _ Mid(stexto, 30, 1) = " " Then ListBox1.AddItem ajustarTexto(Trim(sTempo), 30) stexto = Trim(Replace(stexto, sTempo, "")) 'eliminamos la cadena del texto original sTempo = Mid(stexto, 1, 30) Else 'como es una cadena completa, buscamos el espacio anterior nCont = InStrRev(sTempo, " ") 'si no hay espacios, se coloca todo el texto, seria una 'palabra de mas de 30 caracteres continuos (creo imposible) If nCont = 0 Then ListBox1.AddItem Trim(sTempo) stexto = Trim(Replace(stexto, sTempo, "")) 'eliminamos la cadena del texto original sTempo = Mid(stexto, 1, 30) Else sTempo = Trim(Mid(sTempo, 1, nCont)) ListBox1.AddItem ajustarTexto(sTempo, 30) stexto = Trim(Replace(stexto, sTempo, "")) 'eliminamos la cadena del texto original sTempo = Mid(stexto, 1, 30) End If End If End If Loop End Sub Function ajustarTexto(ByVal stexto As String, ByVal nLetras As Integer) As String Dim sTemporal As String Dim nEspacios As Integer Dim n As Integer Dim sSeparador As String sTemporal = Trim(stexto) ajustarTexto = sTemporal If Len(sTemporal) < nLetras Then nEspacios = nLetras - Len(sTemporal) Repetir: sSeparador = " " If InStr(1, sTemporal, " ") = 0 Then sSeparador = "_" For n = 1 To Len(sTemporal) If Mid(sTemporal, n, 1) = sSeparador Then sTemporal = VBA.Replace(sTemporal, sSeparador, "__", Count:=1) nEspacios = nEspacios - 1 End If If nEspacios = 0 Then Exit For Next n If nEspacios > 0 Then GoTo Repetir End If End If ajustarTexto = VBA.Replace(sTemporal, "_", " ") End Function
  19. 1 point
    Lázaro

    Emparejar a personas

    sortear parejas de jugadores(1).zip
  20. 1 point
    Hola. Lo recomendable es que publiques la solucion para que en un futuro sirva a otros usuarios. Gracias.
  21. 1 point
    Saludos a ambos Una alternativa, con Power Query Libros consolidados - power query_GP.zip
  22. 1 point
    Ha funcionado tofo correctamente. Gracias Saludos
  23. 1 point
    Hola. te adjunto tu archivo con una columna auxiliar. Prueba y comentas. Un saludo. Copia de Ejemplo Sustituir.xlsx
  24. 1 point
    Antoni

    ANSWERED formato en textbox

    A eso me refería cuando decía lo de fabricarlo a mano. El próximo problema vendrá cuando quieras pasar ese dato a una celda, entonces veremos si has entendido algo de todo lo que te hemos explicado. Hasta pronto.
  25. 1 point
    @suprema , el que en la fila 4 tengas datos y no total (igual que en la fila 8, donde solo tienes un 1) ¿Es así o siempre debería aparecer el Total? ¿Y porqué no son valores, sino referencias a otro libro?
  26. 1 point
    Antoni

    ANSWERED formato en textbox

    Las celdas tienen las propiedades Value y Text, en la propiedad Value nos proporciona el valor según el tipo de dato, la propiedad Text nos proporciona el valor según el formato aplicado a la celda en formato texto. Las fechas/hora se almacenan como el número de días transcurridos desde el 1/1/1900, así el 3/1/1900 se almacena como 3. La hora se muestra como la fracción de tiempo transcurrido dentro del día en concreto, 3/1/1900 6:00 se almacena como 3,25. Con esta lógica, en el momento de escribir esto, son las 11:19:15 del 1/4/2020 y se almacena como 43922,4711517361 que es el tiempo total transcurrido desde 1/1/1900 expresado en días. Conclusión, el resultado de cualquier operación entre fechas/horas se expresa en días y por tanto son datos de tipo numérico como lo son los importes o las cantidades. Si lo has entendido, verás que "30:00" en un tetxbox es un texto y no es lo mismo que "30:00" en una celda, con formato [hh]:mm, su propiedad Text nos muestra "30:00", que es un texto y su propiedad Value nos muestra 1,25, que es un número. O sea, el valor la propiedad Value es única, el valor de la propiedad Text, dependerá del formato aplicado a la celda. En cualquier caso, cualquier dato se convierte en texto al pasarlo a un textbox/listbox/combobox. Te dejo un ejemplo. Ejemplo fechas y horas.xlsx
  27. 1 point
    rolano

    Comentario a textbox

    Hola, se mas explicito, donde no te funcionó. Tienes que ver que el comentario este en la celda del código y el texbox.
  28. 1 point
    rolano

    Comentario a textbox

    TextBox1 = Range("A7").Comment.Text Hola prueba así.
  29. 1 point
    Jose BN

    FORMULA QUE PINTE CELDAS

    Ya probaste el formato condicional?
  30. 1 point
    Excelente, toca prepararse para aprovechar al máximo estas bondades
  31. 1 point
    Como veo que eres aficionado a las funciones, aquí te dejo una que hace lo que pides pasándole el valor del Registro a eliminar, devuelve True si encuentra el registro en la hoja Ventas, en caso contrario devuelve False. Recuerda que para realizar cualquier acción sobre una hoja, debe estar desprotegida. Function EliminarVentasComision(Registro As String) As Boolean Dim Ventas As Worksheet Dim Comision As Worksheet Dim Buscado As Range Dim x As Long '-- Set Ventas = Sheets("Ventas") Set Comision = Sheets("Comision") '-- Ventas.Unprotect "joaco9wert" Comision.Unprotect "joaco9wert" '-- Set Buscado = Ventas.Columns("D").Find(Registro, , , xlWhole) If Not Buscado Is Nothing Then EliminarVentasComision = True Ventas.Rows(Buscado.Row).Delete For x = Comision.Range("D" & Rows.Count).End(xlUp).Row To 5 Step -1 If Right(Comision.Range("D" & x), 5) = Right(Registro, 5) Then Comision.Rows(x).Delete End If Next End If '-- Ventas.Protect "joaco9wert" Comision.Protect "joaco9wert" End Function
  32. 1 point
    hola José Si la validación te da verdadero, pero debería dar falso, es porque tu has colocado mal la condición. En tu ejemplo, indica en donde no se cumple la condición .. por ejemplo, yo revisé las que marcaste en verde (O13), suponiendo que esas eran las que no te "cuadran", pero veo que todo da verdadero.. entonces, no veo el error.. Si lo describes, sería mejor.. Una opción para estas formulas es que analices/evalúes cada condición en celdas auxiliares, ahí notarás los errores.. saludos, Silvia
  33. 1 point
    1) los módulos "de clase" (por lo general) son para usos más "especiales" 2) en ninguno de los casos conviene nombrar igual módulos y procedimientos 3) vba reacciona no muy bien ante los nombres "ambiguos" (p.ej. nombres de procedimientos igual a funciones integradas) 4) puedes asignar cualquier macro a (casi) cualquier objeto (botones, textboxes, autoformas, etc.) - si son controles ActiveX dees usar su propio evento '_click' haz tus propias pruebas y decide cual es la forma que más te sirve (?)
  34. 1 point
    avalencia

    READYSTATE COMPLETE

    Pues eso, no has definido qué es eso. No te hagas un mundo y cámbialo: Do Until IE.readyState = 4 Saludos
  35. 1 point
    Hola. Suponiendo que tienes la palabra en la celda A1, prueba asi: =IZQUIERDA(A1;1)& " " &DERECHA(A1;1) Un saludo.
  36. 1 point
    Hola. Prueba esta macro y adaptala a tus necesidades. Sub color() Dim cel As Range Dim rojo(100) Dim azul(100) Xr = -1 Xa = -1 For Each cel In Range("A1:A7") If cel.Font.ColorIndex = 3 Then Xr = Xr + 1 rojo(Xr) = cel End If If cel.Font.ColorIndex = 5 Then Xa = Xa + 1 azul(Xa) = cel End If Next MsgBox "Maximo " & Application.WorksheetFunction.Max(rojo) MsgBox "Minimo " & Application.WorksheetFunction.Min(azul) End Sub Un saludo.
  37. 1 point
    El dilema es que, tal cual lo necesitas, justamente con SendKeys no podrás y sí con el otro ejemplo, que justamente guarda como diferentes pdf cada registro. Sobre el error que mencionas es imposible saber qué ocurre sin tener tus archivos y ver, además de tu pdf, las modificaciones que hiciste así como la línea del error y el erro exacto. Ojo, si modificaste algo sin entender cómo funciona, pues no tiene mucho sentido revisar todo.
  38. 1 point
    Hola, estás utilizando 4 rangos diferentes en la formula de la hoja 2, unifícalos. saludos.
  39. 1 point
    Hola, Veo que no hablamos de la misma aplicación. Los cambios de configuración son validos para la versión de Excel de escritorio, el que se incluye con Microsoft Office. Usted esta usando el Excel WEB, esta versión no tiene todas las funcionalidades. No uso la aplicación WEB. Saludos.
  40. 1 point
    ¡Hola, a ambos! Dejo otra opción en el adjunto, con solo medidas. ¡Bendiciones! UltimoVendedor.xlsx
  41. 1 point
    La configuración del decimal con punto o con coma se puede cambiar en las opciones del Excel
  42. 1 point
    JSDJSD

    ANSWERED concatenar combobox y textbox

    Prueba el adjunto y comenta consulta concatenar pRUEBA(1).xlsm
  43. 1 point
    sailepaty

    AGREGAR EXTENSION CON CONDICION

    Seguro que me estoy perdiendo de algo pero la siguiente formula obtiene los mismos resultados. Saludos
  44. 1 point
    Muy interesante, no tenia idea que se podía utilizar código JS - TS en excel. 👏
  45. 1 point
    Antoni

    Validar DNI, CIF y NIE

    Y a ikanni, que ya te dio la solución en el post #4, y llevamos 23 con este, ni nombrarlo. De desagradecidos está el mundo lleno. ☹️
  46. 1 point
    Gerson Pineda

    ANSWERED Balance con DAX

    La verdad que Dax y Power Query son una maravilla! Saludos
  47. 1 point
    Hola a todos, Tengo una pequeña lista de datos con Provincia, Ciudad, y cantidades en enero, febrero y marzo. Quiero sumar las cantidades de enero-febrero y marzo cuando la Provincia sea Madrid Uso una fórmula matricial, pero,.. =SUMAR.SI, NO funciona, y =SUMA(SI(... SI funciona pero no se la razón de por qué no se puede usar =SUMAR.SI en fórmulas matriciales Alguien lo sabe? Gracias!! SUM-RANGOS-MATRICIAL-CONDICIONES.xlsx
  48. 1 point
    Buenas @jmadridporto2025 Para una combinación simple, usa Sub GetAllCombis() Dim c As Long Dim i1 As Long Dim i2 As Long Dim i3 As Long Dim i4 As Long Dim n As Long Dim s As Long Dim u As Long Dim v() u = 16 ' Número de Partidos c = ((u * 2) * u) ' Número de combinaciones n = ((u * 2) * u) + (u * 2) ' Nùmero de combinaciones con titulos ReDim v(1 To n, 1 To 3) For i1 = 2 To 3 For i2 = 1 To u s = s + 1 ' Se crea el tiulo de columna v(s, 1) = "Partido" v(s, 2) = "Alta" v(s, 3) = "Baja" For i3 = 1 To i2 s = s + 1 v(s, 1) = Hoja1.Range("A" & i3 + 1).Value v(s, i1) = "x" Next If i2 < u Then For i4 = i2 + 1 To u s = s + 1 v(s, 1) = Hoja1.Range("A" & i4 + 1).Value v(s, IIf(i1 = 2, 3, 2)) = "x" Next End If Next Next Hoja2.Range("A2").Resize(s, 3).Value = v MsgBox "Se crearon " & c & " combinaciones", vbInformation, Application.OrganizationName End Sub Un saludo
  49. 1 point
    javrio

    Macro para calificaciones alumnos

    Estimado Luis En la macro con la leyenda antes verá como asigne las nueva variable Espero haber sido claro y solucionar tu problema. Un Abrazo CalificacionesBanner-javrio.zip
  50. 1 point
    Te adjunto un archivo para que lo veas mas claro. Hay una hoja oculta con el nombre "Trabajo" que tiene una copia de la lista con las cabeceras cambiadas. Lista con RowSource.xls


  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up
×
×
  • Create New...

Important Information

Privacy Policy


CTA Templates.png