Saltar al contenido

Israel Cassales

Miembro
  • Contador de contenido

    1243
  • Unido

  • Última visita

  • Días con premio

    66
  • País

    México

Israel Cassales ganó el día el 11 de octubre

Israel Cassales had the most liked content!

4 Seguidores

Sobre Israel Cassales

  • Cumpleaños el 29 de noviembre

Información de perfil

  • Sexo
    Hombre
  • Localización:
    CDMX

Configuraciones

  • Campo que utilizas como separador de argumentos
    ,
  • Mi versión de Excel:
    0,6,7

Visitantes recientes del perfil

12706 visitas de perfil

Israel Cassales's Achievements

Mentor

Mentor (12/14)

  • + de 1 año
  • 500 comentarios
  • + 10 mejores respuestas
  • 100 reacciones
  • + de 1 mes

Insignias recientes

315

Reputación de la comunidad

25

Respuestas de la comunidad

  1. Saludos cordiales, Le recomiendo volver a plantear su consulta y si lo que busca son ideas en VBA publiquelo en la sección del foro correspondiente a VBA.
  2. Hola, No me lo tome a mal pero más que ayuda parece una solicitud de servicio, creo si contacta con algún administrador éste le puede dar recomendaciones de cómo obtener soluciones personalizadas o esperar si (tal vez) alguno de los maestros o miembros avanzados del foro le puede aportar algo. Si un poco de ayuda o recomendación le viene bien, le sugiero: Haga una copia de su libro, hay ocasiones que prefieren subir el original para no editarlo. Inténtelo, para lo que menciona no necesita todos esos datos que lo hacen pesado. Guárdelo como tipo binario, los códigos no le afectan. Seccione su consulta, describa lo que ha hecho para lograr el resultado y en dónde le mostró errores en caso de presentarlos. Que tenga un buen día, saludos cordiales.
  3. Saludos cordiales, como ya ha mencionado el maestro, la función FILTRAR() debería resolver la necesidad planteada poniendo como criterio <>0, o eliminar manualmente los 0 del rango en la función (si no son muchos)
  4. Hola! No te preocupes, si mandas un libro con el ejemplo tu explicación quedaría más clara. Te escribo lo que entiendo, ¿quieres actualizar los importes en la hoja “BBDD” basándote en los datos de la hoja “USUARIO” cuando los números de factura coincidan? Además, ¿quieres limpiar las filas en la hoja “USUARIO” después de la actualización? Como las deducciones no son buenas consejeras lo único que aportare a tu tema sera modificar tu código en base a eso. Sub CORREGIRIMPORTES2() Dim i As Long, j As Long Dim lastRowBBDD As Long, lastRowUSUARIO As Long ' Encuentra la última fila con datos en ambas hojas lastRowBBDD = Sheets("BBDD").Cells(Sheets("BBDD").Rows.Count, "J").End(xlUp).Row lastRowUSUARIO = Sheets("USUARIO").Cells(Sheets("USUARIO").Rows.Count, "J").End(xlUp).Row j = 3 ' DONDE EMPIEZA A ESCRIBIR For i = 3 To lastRowBBDD ' DONDE EMPIEZA A BUSCAR If Sheets("BBDD").Range("J" & i).Value = Sheets("USUARIO").Range("J" & j).Value Then Sheets("BBDD").Range("K" & i).Value = Sheets("USUARIO").Range("K" & j).Value j = j + 1 End If Next i ' Limpia las filas en la hoja USUARIO después de la actualización For j = 3 To lastRowUSUARIO If Sheets("USUARIO").Range("A" & j).Value <> "" Then Sheets("USUARIO").Range("A" & j & ":Q" & j).ClearContents End If Next j End Sub Que hice: 1 Encontrar la última fila con datos, eso asegura que el código no procese filas vacías innecesariamente. 2 Uso de Sheets para especificar la hoja, así haces que el código sea más claro. 3 Limpiar la filas, utiliza ClearContents para limpiar todas las celdas de la fila de una sola vez. Si no es así, trata de mejorar la consulta así podrías recibir mejor ayuda.
  5. Entiendo, siendo así concluyo mi participación en la consulta. ¡Saludos Totales!
  6. Hola, En base a lo explicado (no entendí que hay en B22, así que use C5 como lo tienes) una forma de editar tu fórmula sería así: =(((365-(104+SUMAPRODUCTO((DIASEM(D5:D25,2)<6)*1)))*8)/365)*DIA(FIN.MES(HOY(),0))*C5 Recuerda cambiar la coma por punto y coma.
  7. Hola, buen día. Eso no es exacto, si escribe la palabra casa, le muestra ambas celdas que contienen la palabra casa. Tal como se muestra en el ejemplo: Para sus otras dos consultas le recomiendo abrir un tema por cada una, el motivo es porque el tema se empieza a extender a escenarios que no son inherentes al tema original. Es posible que también pueda ayudarle o reciba apoyo de algún maestro adicional, incluso aún es posible que algún maestro participe en este mismo en esas consultas adicionales. Tome en cuenta por favor que se brinda ayuda, no soluciones personalizadas.
  8. Podría ser por la forma en la que se limpia el combobox, deja hacer unos cambios en el código. Pues creo que podría ayudarte si queda así
  9. Hola, Algo como esto debería servir de acuerdo la explicación: Private Sub ComboBox1_Change() Dim rng As Range Dim cell As Range Dim searchText As String Dim results As Collection Dim item As Variant Set rng = Me.Range("A1:A4") searchText = ComboBox1.Text Set results = New Collection For Each cell In rng If InStr(1, cell.Value, searchText, vbTextCompare) > 0 Then results.Add cell.Value End If Next cell ComboBox1.Clear For Each item In results ComboBox1.AddItem item Next item End Sub Private Sub Worksheet_Activate() ComboBox1.Clear End Sub
  10. Me da gusto que le haya servido, concluyo mi participación en la consulta.
  11. Hola, Pues el código que ha compartido (en mi opinión) se ve bien en su estructura, tal vez el problema de que se borre el ítem se deba a la forma en que se está limpiando el ComboBox. Por qué no guarda el ítem seleccionando una variable selectedItem. Así después de limpiar y volver a llenar el ComboBox, restaura el ítem seleccionado. Algo así: Private Sub Combobox1_DropButtonClick() Dim sd As New Collection Dim celda As Range Dim dato Dim r As Range Dim UF As Integer Dim selectedItem As String On Error Resume Next Worksheets("CONSOLIDADO").Activate Range("S2").Select ' Guarda el ítem seleccionado selectedItem = Combobox1.Value ' Limpia el ComboBox Combobox1.Clear With Worksheets("BASE") UF = .Range("S" & Rows.Count).End(xlUp).Row Set r = .Range("S2:S" & UF) For Each celda In r sd.Add celda.Value, CStr(celda.Value) Next celda For Each dato In sd Combobox1.AddItem dato Next dato End With ' Restaura el ítem seleccionado Combobox1.Value = selectedItem End Sub
×
×
  • Crear nuevo...

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.