Jump to content

Bordes para celdas con macro


ronald

Recommended Posts

hola a todos

talvez alguien de ustedes puede ayudarme

necesito una macro que me ayude a poner bordes a celdas, pero quiero que solo a las filas activas.

tengo una lista en una hoja llamada datos y utilizo un filtro para extraer cierta informacion de esa lista y mandarla a otra hoja llamada datosm, el asunto es que cuando mando esa informacion con el filtro me aparcen los bordes en todas las filas de la hoja y talvez sole he filtrado tres o cuatro o una fila o mas y quiero que solo me aparezcan bordes en las filas filtradas y en el resto no.

esta es el codigo que utilizo para filtrar:

Private Sub TextBox1_Change()

'activamos la hoja base

Sheets("datos").Activate

'nos posicionamos en la celda a1

Sheets("datos").Range("a1").Select

'limpiamos el listbox

ListBox1.RowSource = Empty

'limpiamos la hoja3 donde se genera el filtro avanzado

Sheets("datosm").Range("A:x").ClearContents

'limpiamos los campos de busqueda del filtro avanzado

Sheets("datos").Range("z2:aw2").ClearContents

'le damos el ancho a las 3 columnas del listbox

'ListBox1.ColumnWidths = "175 pt;118 pt;21 pt;25 pt;50 pt;36 pt;50 pt;50 pt"

'en la celda e2 se transfiere lo que se escribe en el textbox1 en este caso el codigo

'los asteriscos entre comillas son para que busque por cualquier letra que se ingrese

'y los signos & son para unir el asterisco con el valor del textbox

Sheets("datos").Range("z2") = "*" & TextBox1 & "*"

'aqui realizamos el filtro avanzado

Range("a1:x400").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

"z1:z2"), copytorange:=Sheets("datosm").Range("a1"), Unique:=False

'mostramos el resultado del filtro avanzado en el textbox

ListBox1.RowSource = "datosm!a2:x400"

End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

UserForm1.Show

'ListBox1.List (ListBox1.ListIndex) this returns the item in the listindex where double clik has happened.'

End Sub

porfa alguien puede ayudarme

Link to post
Share on other sites

.

Sustituye:

Sheets("datosm").Range("A:x").ClearContents[/CODE]

por:

[CODE]Sheets("datosm").Range("A:x").Clear[/CODE]

La respuesta concreta a tu pregunta sería:

[CODE]Sheets("datosm").UsedRange.Borders.LineStyle = _
xlContinuous[/CODE]

Busca [b]LineStyle [/b]en la Ayuda de VBA para ver mas valores

.

Link to post
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Guest
This topic is now closed to further replies.


  • Posts

    • datos a traer.xlsx   Buenas tardes, en el archivo adjunto hay 2 hojas (datos y base), lo que necesito es que en la hoja datos en cada columna de fecha me traiga de la hoja base las fechas de cada uno de los clientes, ejemplo del sr anselmo en la celda E2 deberia traer la fecha 20/01/2020, en la celda F2 deberia traer la fecha 21/02/2020 y asi sucesivamente si tuviera otra fecha   Quedo pendiente de su ayuda
    • Silvia,   Dsiculpa hay alguna forma de poder transcribir la formula: a hoja de calculo de google?, lo que pasa esque trabajo en ellas y al subirla, no lee la formula "AGGREGATE", manda error. Otro punto, al correr la formula en excel para las siguientes semanas, (W40, W41, 42,ETC) veo que se repite el ID de las primeras semanas, ejemplo: W39 -> ID 7052248, W40 -> 7044231...... W41 -> 7044231, W42 -> 7052248. En pocas palabras me esta repitiendo los IDs de las ultimas semanas, crees -de acuerdo a tu experiencia- que se pueda crear una formula para que me busque el ID mas viejo (id asignado a esta tienda de las primeras semanas, que no se haya seleccionado en las ultimas semanas [2], que tenga menos selecciones[menos repetidos en las semanas], y que siempre toma el historial de las ultimas 10 semanas ). El fin de esto es que a lo largo de una serie de semanas, los IDs queden de cierta manera ordenados y me de un sistema ciclico. Muchas gracias por tu apoyo, espero me puedas ayudar ya que eres una crack¡ Saludos.  
    • Buenas tardes Eres muy amable.  Lo que pretendo es que el combobox1, recoja los valores de la hoja llaves los valores que están en "A"sin incluir las celdas vacías, teniendo en cuenta que  se puede ampliar el numero de llaves. En el combobox2, que recoja los valores de la hoja llaves, los valores que están en la columna F y en el combobox3 los que están en la columna G. Todo ello sin incluir los espacios en blanco y teniendo en cuenta que la lista se puede ampliar. Se que es muy lioso y me explico fatal pero te adjunto el archivo por si tienes un momento y me puedes ayudar si se puede hacer.  Muchas graciasLLAVES.xlsm
    • hola JSDJSD  perdona el retraso pero he estado con otros temas y he vuelto a retomar el tema, lo que me has enviado al final lo que hace es separar lo que hace cada numero de usuario pero no es lo que busco, lo que necesito es que me diga dentro de un margen de horas, por ejemplo de 10 a 11 el numero de filas que ha hecho, te adjunto otro fichero con un solo usuario pero veras el rango de fechas que tiene, en un mismo día dentro de una misma hora puede haber 12 filas,todo esta en la fila M, pues necesito poder tener por ejemplo  de 10 a 11 ha realizado 12 filas, de 11 a 12 ha realizado 3 filas, y asi siempre que haya un rango de filas en horario, si no me he explicado bien y me puedes ayudar dimelo y te lo intento explicar mejor, de todas formas lo que me has enviado esta muy bien pero no es lo que busco pero lo aplicare porque me viene bien.   productividad por horas.xlsx
    • Bueno basicamente necesito una macro que me ordene la columna A por los colores que tengan las celdas. Seguramente se habrá abierto este tema anteriormente pero aunque he buscado en los foros no lo encuentro. Tengo un archivo con varias columnas y quiero que se ordene la columna A junto con los datos que contienen las demas columnas. ordenar por color.xls
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy