código visual basic para facturas avanzadas
Post on 09-Nov-2014
55 Views
Preview:
TRANSCRIPT
Hoja6 - 1 Private Sub Label1_Click() If Range("E3") = "A" Then
Generalbaran Else
Generafactinmediata End If End Sub
Private Sub Label2_Click() UserForm5.Show End Sub
Private Sub ToggleButton1_Click() If ToggleButton1.Value = True Then
Range("B2").FormulaR1C1 = "Factura" Range("D3").FormulaR1C1 = "Nº Factura" Range("E26").FormulaR1C1 = "Suma Factura" Rows("27:28").EntireRow.Hidden = False Label1.Caption = "GENERAR FACTURA" Label1.Picture = LoadPicture("[ruta donde esté la imagen]”\Azul.jpg")
Else Range("B2").FormulaR1C1 = ("Albarán") Range("D3").FormulaR1C1 = ("Nº Albarán") Range("E26").FormulaR1C1 = ("Suma Albarán") Rows("27:28").EntireRow.Hidden = True Label1.Caption = "GENERAR ALBARAN" Label1.Picture = LoadPicture("[ruta donde esté la imagen]”\Marino.gif")
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ScrollArea = "A5:G30"
End Sub
UserForm1 - 1 Private Sub CommandButton1_Click() IMPRIMIR
UserForm1.Hide
End Sub
Private Sub CommandButton2_Click()
UserForm1.Hide
End Sub Private Sub UserForm_Activate()
If Range("B2") = "Albarán" Then Label1.Caption = "¿QUIERE IMPRIMIR EL ALBARAN?" Else Label1.Caption = "¿QUIERE IMPRIMIR LA FACTURA?" End If
End Sub
Private Sub UserForm_Click()
End Sub
UserForm2 - 1 Private Sub ComboBox1_Change()
End Sub
Private Sub CommandButton1_Click() FACTURAYA
End Sub Private Sub Label1_Click()
End Sub
Private Sub Label2_Click() facturatodos End Sub
UserForm3 - 1
Private Sub CommandButton1_Click() ActiveSheet.Range("A2").Select UserForm3.Hide
End Sub
Private Sub CommandButton2_Click() ActiveSheet.Range("A2").Select UserForm3.Hide End End Sub
UserForm4 - 1 Private Sub ComboBox1_Change()
End Sub
Private Sub CommandButton1_Click()
UserForm4.Hide
End Sub
UserForm5 - 1
Private Sub Label1_Click() NUEVOCLIENTE Range("NUEVO_CLIENTE").ClearContents UserForm5.Hide End Sub
UserForm6 - 1 Private Sub Label1_Click() NUEVOCLIENTE Range("NUEVO_CLIENTE").ClearContents UserForm6.Hide End Sub
UserForm7 - 1
Módulo1 - 1
Sub nomasdatos() Sheets("Albaran").Activate Range("F8").ClearContents Range("B15:B17").ClearContents Range("D15:D17").ClearContents Range("D15:D24").Select Selection.FormulaR1C1 = "=IF(COD_ART=0,0,1)" Range("F8").Select
End Sub Sub añadealbaran() 'COPIA TODO COMO VALORES
Range("B2:F25").Copy Range("I2").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False
End Sub Sub DATOSCLIENTE() 'COPIA DATOS DEL CLIENTE A LA HOJA Facturacion
Sheets("Albaran").Range("M3").Copy Sheets("Facturacion").Range("A2").Insert Shift:=xlDown Sheets("Albaran").Range("M2").Copy Sheets("Facturacion").Range("B2").Insert Shift:=xlDown Sheets("Albaran").Range("M6").Copy Sheets("Facturacion").Range("C2").Insert Shift:=xlDown Sheets("Albaran").Range("M8").Copy Sheets("Facturacion").Range("D2").Insert Shift:=xlDown Sheets("Albaran").Range("L3").Copy Sheets("Facturacion").Range("J2").Insert Shift:=xlDown Application.CutCopyMode = False
End Sub Sub ARTICULO1() 'lleva a facturacion
If Range("B15") = 0 Or Range("D15") = 0 Then PARAR
Else DATOSCLIENTE Sheets("Albaran").Range("I15:M15").Copy Sheets("Facturacion").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub
Sub ARTICULO2() If Sheets("Albaran").Range("B16") = 0 Then
nomasdatos
Else DATOSCLIENTE Sheets("Albaran").Range("I16:M16").Copy Sheets("Facturacion").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub
Sheets("Facturacion").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub Sub Generalbaran()
If Range("F8") = 0 Then MsgBox ("INTRODUCIR UN CLIENTE") End
Else
If Range("B15") > 0 And Range("D15") = 0 Then
Módulo1 - 2
Sub ARTICULO3() If Sheets("Albaran").Range("B17") = 0 Then
nomasdatos Else
DATOSCLIENTE Sheets("Albaran").Range("I17:M17").Copy PARAR
ElseIf Range("B16") <> 0 And Range("D16") = 0 Then PARAR
ElseIf Range("B17") <> 0 And Range("D17") = 0 Then PARAR Else
UserForm1.Show añadealbaran ARTICULO1 ARTICULO2 ARTICULO3
nomasdatos End If
End If End Sub
Sub PARAR()
MsgBox ("LA REFERENCIA O LA CANTIDAD NO PUEDE SER NULA") End End Sub
Sub IMPRIMIR() 'IMPRIME DOCUMENTO EN PANTALLA
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _ IgnorePrintAreas:=False
End Sub
Sub FACTURAYA() 'MUEVE DATOS A FACTURAS EMITIDAS
UserForm2.Hide Columns("A:J").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range _
("M1:N2"), Unique:=False Cells.Find(What:=Range("M2"), After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False).Activate
Selection.End(xlToLeft).Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select Selection.Cut Sheets("Facturas Emitidas").Activate Range("A2").Activate Selection.Insert Shift:=xlDown Copianumfactura Sheets("Facturacion").Activate ActiveSheet.ShowAllData Selection.Delete Shift:=xlUp Range("A2").Select
End Sub Sub FACTURALCLIENTE() UserForm3.Show UserForm2.Show
End Sub
Módulo2 - 1
Sub DATOSCLIENTEAFACT() 'COPIA DATOS DEL CLIENTE directamenta a facturas emitidas
Sheets("Albaran").Range("M3").Copy Sheets("Facturas Emitidas").Range("A2").Insert Shift:=xlDown Sheets("Albaran").Range("M2").Copy Sheets("Facturas Emitidas").Range("B2").Insert Shift:=xlDown Sheets("Albaran").Range("M6").Copy Sheets("Facturas Emitidas").Range("C2").Insert Shift:=xlDown Sheets("Albaran").Range("M8").Copy Sheets("Facturas Emitidas").Range("D2").Insert Shift:=xlDown Sheets("Albaran").Range("L3").Copy Sheets("Facturas Emitidas").Range("J2").Insert Shift:=xlDown Application.CutCopyMode = False
End Sub
Sub ARTICULO1AFACT() 'LLEVA DIRECTAMENTE A FACTURAS EMITIDAS
If Range("B15") = 0 Or Range("D15") = 0 Then PARAR
Else DATOSCLIENTEAFACT Sheets("Albaran").Range("I15:M15").Copy Sheets("Facturas Emitidas").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub
Sub ARTICULO2AFACT() If Sheets("Albaran").Range("B16") = 0 Then
nomasdatos
Else DATOSCLIENTEAFACT Sheets("Albaran").Range("I16:M16").Copy Sheets("Facturas Emitidas").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub Sub ARTICULO3AFACT() If Sheets("Albaran").Range("B17") = 0 Then
nomasdatos Else
DATOSCLIENTEAFACT Sheets("Albaran").Range("I17:M17").Copy Sheets("Facturas Emitidas").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = False
End If End Sub
Else UserForm1.Show
añadealbaran ARTICULO1AFACT ARTICULO2AFACT ARTICULO3AFACT
nomasdatos End If End If
Copianumfactura Sheets("Albaran").Activate
Módulo2 - 2
Sub Generafactinmediata()
If Range("F8") = 0 Then MsgBox ("INTRODUCIR UN CLIENTE") End
Else
If Range("B15") > 0 And Range("D15") = 0 Then PARAR
ElseIf Range("B16") <> 0 And Range("D16") = 0 Then PARAR
ElseIf Range("B17") <> 0 And Range("D17") = 0 Then PARAR
End Sub
Sub Imprimefacturas() DatosCuadro4 FiltraCuadro4 UserForm4.Show
Range("A2").Select Columns("A:K").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"M1:N2"), CopyToRange:=Range("Q1:AA1"), Unique:=False Application.CutCopyMode = False Range("A2").Select Sheets("Factura").Activate
End Sub
Sub facturatodos()
UserForm2.Hide Range("A2").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select Selection.Cut Sheets("Facturas Emitidas").Activate Range("A2").Select Selection.Insert Shift:=xlDown Copianumfactura Sheets("Facturacion").Activate Range("A2").Select
End Sub
Módulo3 - 1
Sub mustraform() UserForm5.Show End Sub
Módulo4 - 1
Sub DatosCuadro4() 'PASA DATOS DE FACTURA Y CLIENTE A HOJA 1 PARA EL CUADRO 4
Range("J2").Activate Range(Selection, Selection.End(xlDown)).Activate Range(Selection, Selection.End(xlToRight)).Activate Selection.Copy Sheets("Hoja1").Activate Range("A2").Activate Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False Sheets("Facturas Emitidas").Activate Range("D2").Activate Range(Selection, Selection.End(xlDown)).Activate Application.CutCopyMode = False Selection.Copy Sheets("Hoja1").Activate Range("C2").Activate Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False Range("A2").Activate
End Sub
Sub FiltraCuadro4() 'FILTRA FACTURAS UNICAS PARA CUADRO 4
Application.CutCopyMode = False Columns("A:C").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"E1:E2"), CopyToRange:=Range("G1:I1"), Unique:=True Application.CutCopyMode = False
Sheets("Facturas Emitidas").Activate
End Sub
Sub Copianumfactura() 'RELLENA CON FORMULAS DE NUMERO DE FACTURA
Sheets("Facturas emitidas").Activate Range("K2").Copy Selection.CurrentRegion.Select Selection.SpecialCells(xlCellTypeBlanks).Select ActiveSheet.Paste Application.CutCopyMode = False Range("A2").Select
End Sub
Sub NUEVOCLIENTE()
Range("NUEVO_CLIENTE").Copy Sheets("Lista de Clientes").Range("A2").Insert Shift:=xlDown Application.CutCopyMode = False
End Sub
Sub Botón2_Haga_clic_en() UserForm6.Show End Sub
Módulo5 - 1
Sub Procesoalternativo_Haga_clic_en() UserForm6.Show End Sub
top related