código visual basic para facturas avanzadas

14

Click here to load reader

Upload: samuel-mayhuire

Post on 08-Nov-2014

41 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Código Visual Basic para Facturas avanzadas

Hoja6 - 1

Private Sub Label1_Click()If Range("E3") = "A" Then GeneralbaranElse GenerafactinmediataEnd IfEnd Sub

Private Sub Label2_Click()UserForm5.ShowEnd 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("C:\Users\Miguel\Pictures\Botones\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("C:\Users\Miguel\Pictures\Botones\Marino.gif") End If

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)ScrollArea = "A5:G30"

End Sub

Page 2: Código Visual Basic para Facturas avanzadas

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

Page 3: Código Visual Basic para Facturas avanzadas

UserForm2 - 1 Private Sub ComboBox1_Change()

End Sub

Private Sub CommandButton1_Click() FACTURAYAEnd Sub

Private Sub Label1_Click()

End Sub

Private Sub Label2_Click()facturatodosEnd Sub

Page 4: Código Visual Basic para Facturas avanzadas

UserForm3 - 1

Private Sub CommandButton1_Click()ActiveSheet.Range("A2").SelectUserForm3.Hide

End Sub

Private Sub CommandButton2_Click()ActiveSheet.Range("A2").SelectUserForm3.HideEndEnd Sub

Page 5: Código Visual Basic para Facturas avanzadas

UserForm4 - 1

Private Sub ComboBox1_Change()

End Sub

Private Sub CommandButton1_Click()

UserForm4.Hide

End Sub

Page 6: Código Visual Basic para Facturas avanzadas

UserForm5 - 1

Private Sub Label1_Click()NUEVOCLIENTERange("NUEVO_CLIENTE").ClearContentsUserForm5.HideEnd Sub

Page 7: Código Visual Basic para Facturas avanzadas

UserForm6 - 1 Private Sub Label1_Click()NUEVOCLIENTERange("NUEVO_CLIENTE").ClearContentsUserForm6.HideEnd Sub

Page 8: Código Visual Basic para Facturas avanzadas

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").SelectEnd SubSub añadealbaran()'COPIA TODO COMO VALORES

Range("B2:F25").Copy Range("I2").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False Application.CutCopyMode = FalseEnd SubSub 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 = FalseEnd SubSub 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 IfEnd 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 = FalseEnd IfEnd Sub

Sheets("Facturacion").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = FalseEnd IfEnd Sub

Sub Generalbaran()

If Range("F8") = 0 Then MsgBox ("INTRODUCIR UN CLIENTE") End Else If Range("B15") > 0 And Range("D15") = 0 Then

Page 9: Código Visual Basic para Facturas avanzadas

Módulo1 - 2

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") EndEnd Sub

Sub IMPRIMIR()'IMPRIME DOCUMENTO EN PANTALLA ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _ IgnorePrintAreas:=FalseEnd 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").SelectEnd SubSub FACTURALCLIENTE()UserForm3.ShowUserForm2.Show End Sub

Sub ARTICULO3()If Sheets("Albaran").Range("B17") = 0 Then nomasdatosElse DATOSCLIENTE Sheets("Albaran").Range("I17:M17").Copy

Page 10: Código Visual Basic para Facturas avanzadas

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 = FalseEnd 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 IfEnd 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 = FalseEnd IfEnd SubSub ARTICULO3AFACT()If Sheets("Albaran").Range("B17") = 0 Then nomasdatosElse DATOSCLIENTEAFACT Sheets("Albaran").Range("I17:M17").Copy Sheets("Facturas Emitidas").Range("E2").Insert Shift:=xlDown Application.CutCopyMode = FalseEnd IfEnd Sub

Else UserForm1.Show añadealbaran ARTICULO1AFACT ARTICULO2AFACT ARTICULO3AFACT nomasdatos End If End If Copianumfactura Sheets("Albaran").Activate

Page 11: Código Visual Basic para Facturas avanzadas

Módulo2 - 2

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

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

Page 12: Código Visual Basic para Facturas avanzadas

Módulo3 - 1

Sub mustraform()UserForm5.ShowEnd Sub

Page 13: Código Visual Basic para Facturas avanzadas

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").ActivateEnd 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").SelectEnd Sub

Sub NUEVOCLIENTE()

Range("NUEVO_CLIENTE").Copy Sheets("Lista de Clientes").Range("A2").Insert Shift:=xlDown Application.CutCopyMode = FalseEnd Sub

Sub Botón2_Haga_clic_en()UserForm6.ShowEnd Sub

Page 14: Código Visual Basic para Facturas avanzadas

Módulo5 - 1

Sub Procesoalternativo_Haga_clic_en()UserForm6.ShowEnd Sub