Dar formato a textbox. Y que se abra al llamarlo de otro libro

Para dam

Llamar al formulario de un libro aparte cuando nos pregunta si necesitamos factura...

Estoy atorado en como jalar el numero telefónico de una hoja al formulario

1 Respuesta

Respuesta
1

El formulario que vas a abrir, tienes que declarar una variable pública.

Esa variable va al principio de todo el código (revisa el userform6 que te envié)

Public telcli

Desde el código que llama al userform6, pones esto:

            With UserForm6
                .telcli = h2.[Q11]
                .Show
            End With

Le pasas al formulario el valor de una celda.

Por último, en el formulario haces uso de la variable para poner el dato en un textbox, por ejemplo:

Private Sub UserForm_Activate()
'Por.Dante Amor
    Label4 = telcli
    Set h = Sheets("FACTURA")
    Set b = h.Columns("S").Find(Val(telcli), lookat:=xlWhole)
    If Not b Is Nothing Then
        TextBox2 = h.Cells(b.Row, "T")
        TextBox3 = h.Cells(b.Row, "U")
    End If
End Sub

¿Y dónde le digo al código que es un libro diferente? Y aparte esta cerrado el libro.. solo quiero que llame el formulario...

ya estoy apunto de terminar el formulario.. me hacen falta detalles..

necesito llamarlo pero no puedo... (esta en otro libro desde mi escritorio)

lo que comentaba en la pregunta de igual textbox 1 o textbox10

es que si los dos son iguales ala base de datos que se esta generando no permita seguir..

esto es lo que tengo para agarrar datos de una celda y pasarlo al textbox

Sheets("proveedores").Select 
TextBox22.Text = Range("M1").Value 

ESO LO NECESITO PERO DE UN LIBRO A OTRO... abrir servicio y cuando pregunte si necesito factura me haga lo mismo que hiciste

Lo del textbox1 a textbox2, no lo entiendo, pero lo vemos en otra pregunta.

¿Y tiene que ser de otro libro?

Primero tienes que entrar al otro libro y buscar el dato, ya que lo encontraste, ahora sí, te traes el dato que quieras y lo pones en el textbox como el ejemplo que te puse.

Dime qué quieres buscar, en qué libro, en qué hoja, en qué columna lo quieres buscar.

Lo mejor es hacer la búsqueda con find, por ejemplo:

Esto va en tu botón del userform1, te recuerdo que lo tienes que adaptar a tu formulario

Private Sub CommandButton1_Click()
    dato = TextBox1
    Set l1 = Workbooks("nombrelibro.xlsm") '(el libro debe estar abierto)
    Set h1 = l1.Sheets("proveedores") 'hoja en la que se va a buscar
    Set r = h1.Columns("A") 'columna en la que se va a buscar
    Set b = r.Find(dato, lookat:=xlWhole)
    If Not b Is Nothing Then
        With UserForm2
            .VariableDato = h1.Cells(b.Row, "M")
            .Show
        End With
    End If
End Sub

En el otro formulario

Public VariableDato
Private Sub UserForm_activate()
    TextBox22 = VariableDato
End Sub

Es algo complicado de explicar.


Mejor dime qué dato quieres buscar en dónde, explicado con ejemplos y te adapta la macro.

Envíame tus 2 libros con un dato de ejemplo, para entender lo que necesitas.

Si mejor lo intentare hacer en un mismo libro pero quisiera que lo datos se pegaran en otro libro no se si eso se pudiese...

Si se puede, solamente tienes que poner, algo así:

workbooks("libro1").sheets("Hoja1").cells(i, "A") =  userform1.textbox1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas