Cuando intento asignar el valor de un textbox a una celda excel me envía un error
Sucede que cuando intento asignar el valor de un textbox a una celda excel me envia un error y lo hago de la siguiente manera Sub Agregar() Sheets("Base").Select Range("B8").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select ActiveCell.Value = TextBox1.Value End Sub Por algun motivo no me reconoce el Textbox.
¿Qué tipo de textbox estás utilizando? ¿En un Userform o en una hoja y en ese caso con qué barra? Bueno, son detalles que siempre debes aclarar en una consulta. Voy a interpretar que se trata de un control dibujado en la hoja con la barra Cuadro de Controles. En ese caso las líneas deben quedar así: Sub Agregar() Sheets("Base").Select ActiveSheet.Range("B8").Select 'es probable que aquí también te salte error, por eso agregué la hoja activa Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select ActiveCell.Value = ActiveSheet.TextBox1.Value End Sub Si esto resolvió tu consulta, no olvides finalizarla.
En primer lugar quisiera agradecer la pronta respuesta y quiero contarte que el textbox esta en otra hoja dentro del mismo libro (lo hice =INCRUSTAR("Forms.TextBox.1";"")) con el ejemplo que me acabas de enviar me arroja error 438. te pido tambien disculpas por mi ignorancia pero la verdad es que estoy recien aprendiendo como usar estas macros. ahora lo intente de esta manera Sub Agregar() Sheets("Base").Select Range("B8").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select ActiveCell.Value = TextBox1 End Sub No me arroja error pero en la celda solo se posiciona y pasa los datos del Textbox
Quisiera agradecer la ayuda otorgada y les cuento que solucione el inconveniente no se si sera la opción mas optima, pero funciona. Sub Agregar() If (Worksheets("Ingreso").TextBox1 <> "") And (Worksheets("Ingreso").TextBox2 <> "") Then Sheets("Base").Select Range("B8").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select ActiveCell.Value = Worksheets("Ingreso").TextBox1 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox2 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox3 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox4 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox5 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox6 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox7 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox8 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox9 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox10 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox11 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox12 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox13 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox14 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox15 ActiveCell.Offset(0, 1).Select ActiveCell.Value = Worksheets("Ingreso").TextBox16 Sheets("Ingreso").Select Worksheets("Ingreso").TextBox1 = "" Worksheets("Ingreso").TextBox2 = "" Worksheets("Ingreso").TextBox3 = "" Worksheets("Ingreso").TextBox4 = "" Worksheets("Ingreso").TextBox5 = "" Worksheets("Ingreso").TextBox6 = "" Worksheets("Ingreso").TextBox7 = "" Worksheets("Ingreso").TextBox8 = "" Worksheets("Ingreso").TextBox9 = "" Worksheets("Ingreso").TextBox10 = "" Worksheets("Ingreso").TextBox11 = "" Worksheets("Ingreso").TextBox12 = "" Worksheets("Ingreso").TextBox13 = "" Worksheets("Ingreso").TextBox14 = "" Worksheets("Ingreso").TextBox15 = "" Worksheets("Ingreso").TextBox16 = "" MsgBox ("Los datos fueron ingresados correctamente") Else MsgBox ("Rol y Año son datos obligatorios, si uno de estos esta en blanco no es posible continuar. Verifique que estos campos esten completos e intente agregar nuevamente") End If End Sub