Copiar textbox en diferentes columnas según el combobox

Tengo un formulario en el cual tengo un combobox con tipo de moneda y un texbox donde pondré el monto, lo que quisiera hacer es copiar el textbox en diferentes columnas según el tipo demoneda

1 Respuesta

Respuesta
1

[Hola 

Explica con más claridad tu petición

Hola tengo lo siguiente el combobox con tipo de moneda con los valores soles y dolares

lo que  necesito es que al selccionar un tipo de moneda del combobox el monto ingresado en el textbox se copie en la columna que le corresponda, en caso sea soles en la columna I, y en caso sea dolares en la columna J

Aquí la macro

Private Sub CommandButton1_Click()
Dim i
    Set h = Sheets("Hoja3")
    Select Case ComboBox1.ListIndex
        Case 0: col = "I"
        Case 1: col = "J"
    End Select
    '
     i = 6
    Do While Cells(i, col) <> ""
        i = i + 1
    Loop
    h.Cells(i, col) = Val(TextBox1.Text)
End Sub

Private Sub UserForm_Initialize()
ComboBox1. AddItem "soles"
ComboBox1. AddItem "dolares"
End Sub

Valora esta respuesta para finalizar excelente, bueno saludos!

amigo al ejecutar la macro el valor lo coloca en la celda i6 y no en la celda inferior 

Macro actualizada, cambiar la valoración de esta respuesta

Private Sub CommandButton1_Click()
    ult = Sheets("ON TRADE- MAYORISTAS FY20").Cells(Rows.Count, 6).End(xlUp).Row
    If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Or TextBox5 = "" Or ComboBox1 = "" Or ComboBox2 = "" Or ComboBox3 = "" Or ComboBox4 = "" Or ComboBox5 = "" Then
    MsgBox "Escriba todos los datos"
    Else
    Select Case ComboBox4.ListIndex
        Case 0: col = "I" ' soles
        Case 1: col = "J" ' dolares
    End Select
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 1) = TextBox1
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 2) = CDate(TextBox2)
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 3) = ComboBox1
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 4) = ComboBox2
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 5) = TextBox3
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 6) = ComboBox3
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 7) = TextBox4
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 8) = ComboBox4
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, col) = TextBox1 ' soles o dólares
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 11) = ComboBox5
    x = ult + 1
    rango = "A" & x & ":L" & x
    Sheets("ON TRADE- MAYORISTAS FY20").Select
    Range(rango).Select
    MsgBox "Se ha escrito correctamente su registro"
    response = MsgBox("¿Desea añadir otro registro?", _
    vbYesNo)
    If response = vbYes Then
    TextBox1.Text = ""
    TextBox2.Text = ""
    TextBox3.Text = ""
    TextBox4.Text = ""
    TextBox5.Text = ""
    ComboBox1.Text = ""
    ComboBox2.Text = ""
    ComboBox3.Text = ""
    ComboBox4.Text = ""
    ComboBox5.Text = ""
    TextBox1.SetFocus
    Else
    Unload Me
    UserForm1.Show
End If

amigo, disculpa nuevamente la molestia para agregarle el formato de moneda al momento de copiarlo a la celda correspondiente 

Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, col) = Format(Val(TextBox1), "#,##0.00")

Se le puede agregar el símbolo de las monedas correspondientes sean dolares o soles

Si, pero tendrás dificultades cuando realizas operaciones

que tipo de dificultades ??

Estuve investigando e hice los ajustes


Macro actualizada

Private Sub CommandButton1_Click()
    ult = Sheets("ON TRADE- MAYORISTAS FY20").Cells(Rows.Count, 6).End(xlUp).Row
    If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Or TextBox5 = "" Or ComboBox1 = "" Or ComboBox2 = "" Or ComboBox3 = "" Or ComboBox4 = "" Or ComboBox5 = "" Then
    MsgBox "Escriba todos los datos"
    Else
    Select Case ComboBox4.ListIndex
        Case 0: col = "I" ' soles
        Case 1: col = "J" ' dolares
    End Select
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 1) = TextBox1
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 2) = CDate(TextBox2)
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 3) = ComboBox1
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 4) = ComboBox2
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 5) = TextBox3
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 6) = ComboBox3
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 7) = TextBox4
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 8) = ComboBox4
    '
    If col = "I" Then
        Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, col).NumberFormat = "$#,##0_);($#,##0)"
    Else
        Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, col).NumberFormat = "[$$-en-US]#,##0.00"
    End If
    '
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, col) = Val(TextBox1.Text) ' soles o dólares
    Sheets("ON TRADE- MAYORISTAS FY20").Cells(ult + 1, 11) = ComboBox5
    x = ult + 1
    rango = "A" & x & ":L" & x
    Sheets("ON TRADE- MAYORISTAS FY20").Select
    Range(rango).Select
    MsgBox "Se ha escrito correctamente su registro"
    response = MsgBox("¿Desea añadir otro registro?", _
    vbYesNo)
    If response = vbYes Then
    TextBox1.Text = ""
    TextBox2.Text = ""
    TextBox3.Text = ""
    TextBox4.Text = ""
    TextBox5.Text = ""
    ComboBox1.Text = ""
    ComboBox2.Text = ""
    ComboBox3.Text = ""
    ComboBox4.Text = ""
    ComboBox5.Text = ""
    TextBox1.SetFocus
    Else
    Unload Me
    UserForm1.Show
End If

Muchas gracias amigo 

Amigo quisiera que me apoyes nuevamente, tengo lo siguiente

Tengo el siguiente formulario, tengo un combobox y al cambiar el combobox se carguen los datos en los textbox resaltados delsde el texbox1 al textbox6, los datos están en la siguiente tabla, además de que los textbox se bloqueen para no modificar esos textbox a excepción del textbox 2 correspondiente a status

El textbox 7 correspondiente a la fecha de creación quisiera que al ingresarlo me arroje en el textbox8 la diferencia de días entre el text box1 y el textbox8

Adicional a ello al momento de seleccionar el botón actualizar la información de los textbox en las celdas correspondientes incluidos los datos del textbox 7 y textbox8 que se agregaran en las siguientes columnas

Espero me pueda ayudar

Es nueva petición, crea una nueva pregunta y explica de otra manera y poder ayudarte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas