Adecuar datos en textbox para que se coloquen en un hoja y celda especifica

Tengo 2 hojas la primera es : clientes y la segunda FACTURAS

Recién realice este código:

Private Sub CommandButton3_Click()Sheets("FACTURAS POR HACER").ActivateSelection.EntireRow.InsertIf TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" ThenMsgBox "Está dejando campos requeridos vacios favor complete", vbInformation, "Almacen"TextBox2.SetFocusElseIf CheckBox1.Value = True ThenActiveCell.Offset(0, 1) = TextBox2.ValueActiveCell.Offset(0, 2) = TextBox3.ValueActiveCell.Offset(0, 3) = TextBox4.ValueActiveCell.Offset(0, 4) = TextBox5.ValueActiveCell.Offset(0, 5) = TextBox6.ValueActiveCell.Offset(0, 6) = TextBox7.ValueActiveCell.Offset(0, 7) = TextBox8.ValueActiveCell.Offset(0, 12) = TextBox16.ValueActiveCell.Offset(0, 8) = TextBox18.ValueActiveCell.Offset(0, 9) = TextBox19.ValueActiveCell.Offset(0, 10) = TextBox20.ValueActiveCell.Offset(0, 11) = TextBox21.ValueMsgBox "Datos actualizados correctamente", vbInformation, "Almacen"TextBox1 = ""TextBox2 = ""TextBox3 = ""TextBox4 = ""TextBox5 = ""TextBox6 = ""TextBox7 = ""TextBox8 = ""TextBox16 = ""TextBox20 = ""TextBox21 = ""TextBox18 = ""TextBox19 = ""TextBox2.Locked = TrueTextBox3.Locked = TrueTextBox4.Locked = TrueTextBox5.Locked = TrueTextBox6.Locked = TrueTextBox7.Locked = TrueTextBox8.Locked = TrueTextBox20.Locked = TrueTextBox21.Locked = TrueTextBox18.Locked = TrueTextBox19.Locked = TrueTextBox16.Locked = TrueElseActiveCell = TextBox2.ValueActiveCell.Offset(0, 1) = TextBox2.ValueActiveCell.Offset(0, 2) = TextBox4.ValueActiveCell.Offset(0, 3) = TextBox5.ValueActiveCell.Offset(0, 4) = TextBox6.ValueActiveCell.Offset(0, 5) = TextBox7.ValueActiveCell.Offset(0, 6) = TextBox8.ValueActiveCell.Offset(0, 10) = TextBox20.ValueActiveCell.Offset(0, 9) = TextBox21.ValueActiveCell.Offset(0, 7) = TextBox18.ValueActiveCell.Offset(0, 8) = TextBox19.ValueActiveCell.Offset(0, 12) = TextBox16.ValueMsgBox "Datos actualizados correctamente", vbInformation, "Almacen"TextBox1 = ""TextBox2 = ""TextBox3 = ""TextBox4 = ""TextBox5 = ""TextBox6 = ""TextBox7 = ""TextBox8 = ""TextBox16 = ""TextBox20 = ""TextBox18 = ""TextBox19 = ""TextBox21 = ""TextBox2.Locked = TrueTextBox3.Locked = TrueTextBox4.Locked = TrueTextBox5.Locked = TrueTextBox6.Locked = TrueTextBox7.Locked = TrueTextBox8.Locked = TrueTextBox20.Locked = TrueTextBox21.Locked = TrueTextBox18.Locked = TrueTextBox19.Locked = TrueTextBox16.Locked = TrueEnd IfCheckBox1.Value = FalseCheckBox2.Value = FalseEnd IfEnd Sub

lo que me sucede es que al agarrar datos y querer pegarlos en la hoja de FACTURAS POR HACER este me los pega en donde sea y como quiera.

Yo necesito que me lo coloque de manera TRASPONER y que lo vaya pegando desde la celda A2 pero no encuentro como.

1 respuesta

Respuesta
1

Luego de seleccionar tu hoja, le estás diciendo que inserte una fila a partir de la 'Selección'... pero no sabes a ciencia cierta qué celda está en ese momento seleccionada... debes indicarle a la macro.

¿Dónde estás queriendo insertar la fila? ¿Al inicio de la tabla de datos? En ese caso debes seleccionar alguna celda de la primer fila de datos. Y luego recién insertar.

Además te ordeno las instrucciones, porque si insertas 1ro pero luego no pasa los controles te van quedando filas insertadas vacías.

Sub CommandButton3_Click()
'ajustada x Elsamatilde
If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Then
    MsgBox "Está dejando campos requeridos vacios favor complete", vbInformation, "Almacen"
    TextBox2.SetFocus
ElseIf CheckBox1.Value = True Then
    Sheets("FACTURAS POR HACER").Activate
    'indicar la fila a partir de donde se insertará la fila
    'POR EJEMPLO si fuese A2
    Range("A2").Select
    Selection.EntireRow.Insert
'ya estás en la fila insertada y en col A
    ActiveCell.Offset(0, 1) = TextBox2.Value
    ActiveCell.Offset(0, 2) = TextBox3.Value
'siguen tus instrucciones

ATENCIÓN: donde dice Range("A2") debes reemplazar por tu primer celda con datos a partir de dónde quieras insertar la fila nueva. 

PD) Creo que te sobra un End If... revisa x favor y comenta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas