Numero autoincrementable en Celda VBA Excel.

Tengo un formulario de ingreso de registros, el cual al presionar el botón ingresar, toma los valores y los inserta en la celda correspondiente.(Nombre, apellido). Busco que al ingresar nuevos registros, se inserte un código autoincrementable, que me permita relacionarlo con otras consultas. Con Do While busco la última celda vacía donde ingresaré los últimos registros, que en este caso son solo nombre y apellido, donde el cód se debe insertar solo en un formato propio de código. Busco desarrollarlo en vba.

Private Sub CommandButton1_Click()
dim cod As Integer
f=49
do while not isempty(cells(f,1))
f=f+1
loop
'  Necesito incorporar en primera celda vacía y consecutivas el código asociado al nombre y apellido.
'.......
.......
End sub

f=49

1 respuesta

Respuesta
-1

H o l a

te paso la macro que genera el código y pasa los datos de los textbox

Private Sub CommandButton1_Click()
Set h1 = Sheets("Hoja1") ' hoja donde se guardará los datos
'
u1 = h1.Range("A" & Rows.Count).End(xlUp).Row + 1
j = h1.Range("A" & Rows.Count).End(xlUp).Row
'
codigo = h1.Range("A" & j).Value + 1 'genera código
'
    h1.Cells(u1, "A") = Val(codigo) ' los datos del codigo se guardará en la columna A
    h1.Cells(u1, "B") = TextBox2 ' los datos del TextBox2 se guardará en la columna B
    h1.Cells(u1, "C") = TextBox3 'los datos del TextBox2 se guardará en la columna C
'
End Sub

Me comentas y valora la respuesta con Excelente o bueno saludos!

tu lo estas asociando a columna, pero necesito partir desde la celda 50 ( el resúmen de la linea de código lo indica). No necesito cod de la columna b y c solo que cuando presione el botón del formulario, la celda 49,1 o cells(f,1) (f=49) se agregue un código autonumerico de forma automática 

H o l a:

Antes de votar se pregunta para aclarar la duda

Y no has entendido la macro esta correctamente solo faltaba ajustar a la fila 50, los textbox son para el nombre y apellidos.

te paso la macro ajustada 

Private Sub CommandButton1_Click()
Set h1 = Sheets("Hoja1") ' hoja donde se guardará los datos
'
u1 = h1.Range("A" & Rows.Count).End(xlUp).Row + 1
If u1 < 50 Then u1 = 50
j = h1.Range("A" & Rows.Count).End(xlUp).Row
'
codigo = h1.Range("A" & j).Value + 1 'genera código
'
    h1.Cells(u1, "A") = Val(codigo) ' los datos del codigo se guardará en la columna A
    h1.Cells(u1, "B") = TextBox1 ' los datos del TextBox2 se guardará en la columna B
    h1.Cells(u1, "C") = TextBox2 'los datos del TextBox2 se guardará en la columna C
'
End Sub

Recuerda cambiar la valoración como  EXCELENTE saludos!

Que arrogante....Gracias! 

¿Cómo es que valoran negativo sin antes pedir una aclaración? Se da una sugerencia y se ponen muy, pero muy impredecibles.. bueno!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas