(2) Guardar Hoja con las mismas dimencionesde la original
me olvide de dejarte el código en mi solicitud de Guardar Hoja con las mismas dimencionesde la original
SubCopiaFactura()
'Definir variables
Dim rango, n As Range
Dim i As Integer
Dim nombre As String
'Ocultaprocedimientos
Application.ScreenUpdating=False
'Dar valor a variable Nombre
nombre = Range("C8") & "_" & Range("E8")
'Carganombre de rango a copiar
Setrango =Range("A1:F35")
'Comprueba que tiene nº de factura si no sale de macro
If Sheets("FACTURA").Range("E8") = Empty Then
validación = MsgBox("Introduzca nº de factura ", vbCritical, "FACTURA SIN NUMERAR...")
'Sinotiene nºde factura vuelve a la hoja y celda K4
Ifvalidación =1Then
Range("E8").Select
ExitSub
EndIf
EndIf
'Crea la hoja con el nombre ya defenido en C8 y nº de factura
Sheets.Add.Name = nombre
i = 0
'Copiatodas las líneas delrango
ForEachn Inrango.Columns
n.CopyActiveSheet.Range("A1").Offset(,i)
i =i +1
Nextn
'Vaciamos el rango
Set rango = Nothing
Application.ActiveSheet.Copy 'Copiala hoja activa
ActiveSheet.SaveAsThisWorkbook.Path&_
"\" & nombre 'En la misma ruta que el archivo original
Application.CutCopyMode = False
ActiveWorkbook.Saved = True
ActiveWorkbook.Close 'Cierra el nuevo libro
Application.DisplayAlerts = False 'Quita alertas
ActiveSheet.Delete 'Borra la ultima hoja (ultima factura hecha)
Sheets("FACTURA").Select 'Vuelve a la hoja inicial
Sheets(1).Range("E8").Value = Sheets(1).Range("E8").Value + 1
Application.DisplayAlerts = True 'Activa alertar
Application.ScreenUpdating = True 'Vuelve a mostrar procedimientos
End Sub
1 Respuesta
Respuesta de Luis Mondelo
1