Jump to content

Jose BN

Members
  • Content Count

    209
  • Joined

  • Last visited

  • Days Won

    8

Everything posted by Jose BN

  1. Juan P A ver si con esto me invitas a un café : Sub Worksheet_SelectionChange(ByVal Target As Range) Dim anchoG As Single Dim anchoP As Single anchoG = 24 anchoP = 5.57 Static Col As Long If Target.Count > 1 Then Exit Sub If Target.Column >= 11 And Target.Column <= 41 Then Target.Columns.ColumnWidth = anchoG Else Target.Columns.ColumnWidth = anchoP End If If Col > 0 Then Columns(Col).ColumnWidth = 8 End If Col = Target.Column End Sub Saludos J
  2. Juan P. no logré ver la imagen que mencionas, pero veamos: para que cuando se pulse sobre una celda se agrande y luego vuelva a tener su tamaño ya que la celda solo tendrá unos 4 caracteres. A ver si damos en el clavo a lo que he logrado comprender: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Intersect(Target, Range("h7:al7,h8:AL8")) Is Nothing Then ActiveWindow.Zoom = 100 Else ActiveWindow.Zoom = 120 End If End Sub
  3. Abusando de esta recomendación de Héctor Miguel asumiendo que te refieres a los desplegables en listas de reglas de validación (?), mira por aquí: - Drop Down List Too Wide - Make the Dropdown List Temporarily Wider - Make the Dropdown List Appear Larger - Data Validation Tips and Quirks
  4. Juan P esto sucede porque el evento Worksheet_Change que ha utilizado Gerson están dirigido a los cambio que ocurran en la celda E2, si lo que deseas es aplicar en E4 solo debes cambiar la referencia. Private Sub Worksheet_Change(ByVal Target As Range) '************ by Gerson Pineda ************ '************ Feb/2020 ************ On Error Resume Next Application.EnableEvents = False With Target If .Address(0, 0) = "E4" Then .Value = _ VBA.Left(.Value, VBA.InStr(1, .Value, " ", vbTextCompare) - 1) End With Application.EnableEvents = True On Error GoTo 0 End Sub
  5. En la web existen muchas opciones, ya revisaste ese universo?
  6. A ver si te parece: Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo ErrHandler If Intersect(Target, Me.Range("e6:e10")) Is Nothing Or Target = "" Then Exit Sub Application.EnableEvents = False If Target = 2 Then Target.Offset(0, 13) = "LIM" Target.Offset(0, 14) = "AMS" Target.Offset(0, 15) = "CDG" Target.Offset(0, 16) = "AMS" Target.Offset(0, 17) = "LIM" Else End If ErrHandler: Application.EnableEvents = True End Sub Un buen consejo que me dieron hace poco tiempo, una gra
  7. A ver si por aquí van las balas.... https://docs.microsoft.com/en-us/office/troubleshoot/excel/save-file-to-network-drive
  8. Posiblemente! Sobren las ayudas con el archivo, consideralo!
  9. Que bien! que lograras llegar a tu resultado.. Saludos JB
  10. Es lo que he entendido que buscabas hacer, probando lo que te adjunte. ALERTA EN TIEMPO.xlsm
  11. Otra opción que puedes probar: Private Sub UserForm_Activate() tpo = «00:00:05» Label1.Caption = «ESTE FORMULARIO SE CERRARÁ EN 5 SEGUNDOS AUTOMÁTICAMENTE» Application.Wait Now + TimeValue(tpo) UserForm1.Hide End Sub
  12. Esto es obra del gran Antoni: https://ayudaexcel.com/foro/topic/21636-cerrar-formulario-después-de-un-tiempo/ Public Formulario As Object Public Hora Sub Reloj() Hora = Time + TimeSerial(0, 0, 5) Application.OnTime Hora, "Pechar" End Sub Sub Pechar(): On Error Resume Next Unload Formulario Application.OnTime Hora, "Pechar", Schedule:=False End Sub
  13. Diego! desde la primera fila....muchas gracias! Tema resuelto. Saludos
  14. Nada puede hacer el motor de búsqueda de google a tu par Haplox..... nada!!!!!
  15. Hola, Amig@s del foro quisiera solicitarles la colaboración con lo siguiente, tengo un libro en el cual intento copiar datos de una hoja a otra, hasta aquí parecen ir bien las cosas pero quisiera agregar una condición al copiado para que previo a ejecutar este copy revise el rango definido en a hoja origen llamada "Diario" y si detecta celdas vacías genere el aviso de la celda que esta en blanco y no proceda a copiar hasta que todas las celdas se encuentren completas, si esto se cumple copie los datos a la hoja BD. Como ya lo dijo el buen amigo Haplox: "Seguro que de la bola d
  16. Mil gracias! Primo Gerson pequeño y obvio detalle...tema resuelto!!! Saludos J
  17. Gersón muy amable tu consideración, comprendo lo que dices. Solo me gustaría insistir para entender porque "de crece" el calculo del porcentaje cuando se supera el valor de "A" como me sucede con el ultimo archivo que compartí. Saludos J
  18. Gersón, JSDJSD & nueva maravilla del perú (Silvia) Muchas gracias! por el soporte! Observó que existe un error en el calculo de la eficiencia, al momento que el dato de "B" es mayor "A" , ejemplo si la cantidad entregada es=92 el resultado a devolver debe ser 101% (92/91=1.01...) pero el código emite un resultado del 99% Viendo el código de Gersón si el valor de A1 es 91 (.Offset ,1) y valor de B1 es 91 (.Offset , -1) el resultado lo realiza correctamente en "C1"=100%, pero si el dato en "B" es mayor los resultados parecen estar incorrectos! o algo debe estar jugando una mal
  19. Gerson lo digo por tu gran amigo avalencia He cerrado el excel pero continua igual, algo parece ir mal con los parametros. Si tienes oportunidad de revisar te lo agradezco J 2VARIACION CELDA.xlsm
  20. Hola! Gersón las cosas que salen de honduras son tan maravillosas como el Perú! Se ajusta a lo que andaba buscando, solo una consulta, si cambio el valor máximo a 110 deja de funcionar If .Value > 110 Or .Value < 90 Then En qué pueda estar el fallo. Saludos J
  21. Hola! amigos Quisiera solicitarles ayuda para el siguiente caso, tengo un libro en donde la columna A tiene un valor dado, en la columna B el usuario digita la cantidad real entregada y en la columna C de determina la eficiencia del pedido (B/A), el dato que cambia en la hoja es en la columna B estoy intentando crear una serie de aviso que le resalten las variaciones al usuario cuando el valor de C está por encima o por debajo de los margenes datos (>100 ó <90), hasta ahí creo ir por buen camino (eso espero!): Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  22. Marcos 14 no crees que pueda faltar un poco más de esfuerzo de tu parte? este sitio esta plagado de personas humildes que dedican su tiempo desinteresado para ayudar a los que sabemos tanto o nada(donde me incluyo).
  23. Marcos14 Duda alguna no tengo que los tiros de Antoni deben estar dando en el blanco! El archivo por algunas razones técnicas de mi equipo no me permitieron abrir tu archivo, pero si lo que necesitas es dimensionar hacia la derecha (observa el código abajo), la propuesta que te hice lo hace es solo que debes ajustar al tamaño del textbox llamado Cant que mencionas, como repito asumiendo sin ver tu archivo. Private Sub UserForm_Click() Dim NewHeight As Single NewHeight = Height If NewHeight = Val(Tag) Then 'Height = Val(Tag) * 3 Width = Val(Tag) * 3 El
  24. Private Sub UserForm_Activate() UserForm1.Caption = "Click r!" Tag = Height ' Mantener el tamaño inicial. End Sub Private Sub UserForm_Click() Dim NewHeight As Single NewHeight = Height If NewHeight = Val(Tag) Then Height = Val(Tag) * 2 Else Height = Val(Tag) End If End Sub Private Sub UserForm_Resize() UserForm1.Caption = "New Height: " & Height & " " & "Click to resize me!" End Sub Marcos14 Al dar clic sobre el formulario verás el cambio y como este retorna su tamaño inicial en el segundo clic , espero te pueda ser útil.
×
×
  • Create New...

Important Information

Privacy Policy