Problema con una macro
Hola recurro a ti para la siguiente pregunta, resulta que tengo lo siguiente:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Worksheets("Orden1").Range("C9").Value = Date
Dim fila As Integer
fila = 17
While Cells(fila, 2) <> Empty
fila = fila + 1
Wend
Cells(fila, 1) = CDbl(TextBox1)
Cells(fila, 2) = TextBox2
TextBox1 = Empty
TextBox2 = Empty
TextBox1.SetFocus
IncluiralHistorial
INSERTARFILAS
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Private Sub IncluiralHistorial()
Dim counter3 As Integer
Dim counter4 As Integer
counter3 = 17
counter4 = 7
Do While Worksheets("Orden1").Cells(counter3, 1).Value <> 0
If Worksheets("Orden1").Cells(counter3, 2).Value <> Worksheets("Comprasefectuadas").Cells(counter4, 3).Value Then
If Worksheets("Comprasefectuadas").Cells(counter4, 1) = 0 Then
Worksheets("Comprasefectuadas").Cells(counter4, 1).Value = Worksheets("Orden1").Cells(9, 3).Value
Worksheets("Comprasefectuadas").Cells(counter4, 2).Value = Worksheets("Orden1").Cells(counter3, 1).Value
Worksheets("Comprasefectuadas").Cells(counter4, 3).Value = Worksheets("Orden1").Cells(counter3, 2).Value
Worksheets("Comprasefectuadas").Cells(counter4, 4).Value = Worksheets("Orden1").Cells(13, 2).Value
counter3 = counter3 + 1
counter4 = counter4 + 1
Else
counter4 = counter4 + 1
End If
Else
counter3 = counter3 + 1
End If
Loop
End Sub
Sub INSERTARFILAS()
Application.ScreenUpdating = False
i = 7
While Worksheets("Comprasefectuadas").Cells(i, 1).Value <> ""
Worksheets("Comprasefectuadas").Cells(i + 1, 1).Select
i = i + 1
Wend
a = 3
While a > 0
Worksheets("Comprasefectuadas").Cells(i + 1, 1).Select
Rows(i).Insert
Sheets("Comprasefectuadas").Range("G" & i - 1).Select
Sheets("Comprasefectuadas").Range("G" & i - 1).Copy
Sheets("Comprasefectuadas").Range("G" & i).PasteSpecial
a = a - 1
Wend
Application.ScreenUpdating = True
End Sub
Tengo una hoja1 donde hago el llamado de la macro1 que captura 2 datos y al darle al botón de insertar pasa esos datos a la hoja2 y a su vez lo que deseo es que valla insertando filas a esa hoja2, pero me da error en la linea que resalte, cosa que esta macro de insertarfilas funciona bien cuando se trata de la misma hoja. Gracias de Antemano.
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Worksheets("Orden1").Range("C9").Value = Date
Dim fila As Integer
fila = 17
While Cells(fila, 2) <> Empty
fila = fila + 1
Wend
Cells(fila, 1) = CDbl(TextBox1)
Cells(fila, 2) = TextBox2
TextBox1 = Empty
TextBox2 = Empty
TextBox1.SetFocus
IncluiralHistorial
INSERTARFILAS
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Private Sub IncluiralHistorial()
Dim counter3 As Integer
Dim counter4 As Integer
counter3 = 17
counter4 = 7
Do While Worksheets("Orden1").Cells(counter3, 1).Value <> 0
If Worksheets("Orden1").Cells(counter3, 2).Value <> Worksheets("Comprasefectuadas").Cells(counter4, 3).Value Then
If Worksheets("Comprasefectuadas").Cells(counter4, 1) = 0 Then
Worksheets("Comprasefectuadas").Cells(counter4, 1).Value = Worksheets("Orden1").Cells(9, 3).Value
Worksheets("Comprasefectuadas").Cells(counter4, 2).Value = Worksheets("Orden1").Cells(counter3, 1).Value
Worksheets("Comprasefectuadas").Cells(counter4, 3).Value = Worksheets("Orden1").Cells(counter3, 2).Value
Worksheets("Comprasefectuadas").Cells(counter4, 4).Value = Worksheets("Orden1").Cells(13, 2).Value
counter3 = counter3 + 1
counter4 = counter4 + 1
Else
counter4 = counter4 + 1
End If
Else
counter3 = counter3 + 1
End If
Loop
End Sub
Sub INSERTARFILAS()
Application.ScreenUpdating = False
i = 7
While Worksheets("Comprasefectuadas").Cells(i, 1).Value <> ""
Worksheets("Comprasefectuadas").Cells(i + 1, 1).Select
i = i + 1
Wend
a = 3
While a > 0
Worksheets("Comprasefectuadas").Cells(i + 1, 1).Select
Rows(i).Insert
Sheets("Comprasefectuadas").Range("G" & i - 1).Select
Sheets("Comprasefectuadas").Range("G" & i - 1).Copy
Sheets("Comprasefectuadas").Range("G" & i).PasteSpecial
a = a - 1
Wend
Application.ScreenUpdating = True
End Sub
Tengo una hoja1 donde hago el llamado de la macro1 que captura 2 datos y al darle al botón de insertar pasa esos datos a la hoja2 y a su vez lo que deseo es que valla insertando filas a esa hoja2, pero me da error en la linea que resalte, cosa que esta macro de insertarfilas funciona bien cuando se trata de la misma hoja. Gracias de Antemano.
1 respuesta
Respuesta de cristianccb
1