Bonjour à tous,
J'essaye d'automatiser la facture d'un membre de ma famille avec une macro normale que voici :
J'ai créer une macro
Le code s'arrête aux lignes suivantes avec les messages respectifs suivants :
Il me dit que la fonction Select ne peut fonctionner.
Avez-vous une idée du problème ?
J'espère pouvoir laisser cet exemple pour une personne ultérieure 🙂
D'avance merci.
J'essaye d'automatiser la facture d'un membre de ma famille avec une macro normale que voici :
J'ai créer une macro
Code:
Sub Imprimer()
'Sauvegarder et imprimer
'Application.Visible = True 'Pour cacher Excel
Application.ScreenUpdating = False 'Pour ne pas mettre à jour l'affichage
Dim NL As Integer
Dim Art As Integer
Dim NR As Integer
NL = Worksheets("Sauvegarde").Cells(65535, 1).End(xlUp).Row 'Numéro de Ligne de départ de la feuille DATA
'MsgBox "NL vaut " & NL
'Incrémentation
NL = NL + 1
'MsgBox "A présent, NL vaut " & NL 'Après incrémentation
NR = Worksheets("Facture").Range("E4")
Dim Rng As Range
Set Rng = Worksheets("Sauvegarde").Range("F:F").Find(NR, LookIn:=xlValues)
'Impression en double exemplaire
'Sheets("Facture").PrintOut copies:=2
'Copie et sauvegarde des données
If Rng Is Nothing Then
'Informations sur la Facture
Sheets("Facture").Cells(4, 5).Select
Selection.Copy
Sheets("Sauvegarde").Select
Range("A" & NL).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Date
Sheets("Facture").Select
Range("E3").Select
Selection.Copy
Sheets("Sauvegarde").Select
Range("B" & NL).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Client
Sheets("Facture").Select
Range("E5").Select
Selection.Copy
Sheets("Sauvegarde").Select
Range("C" & NL).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Montant Toutes Taxes Comprises
Sheets("Facture").Select
Range("F25").Select
Selection.Copy
Sheets("Sauvegarde").Select
Range("D" & NL).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'TVA
Sheets("Facture").Select
Range("G6").Select
Selection.Copy
Sheets("Sauvegarde").Select
Range("E" & NL).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Article-Quantité-PrixUnitaire
Sheets("Facture").Select
Art = Worksheets("Facture").Range("B14")
Dim i As Integer 'ligne
Dim j As Integer 'colonne
Dim c As Integer 'incrémentation de 1 ds Sauvegarde
Dim p As Integer
c = 6
For i = 1 To 8
For j = 1 To 5
Worksheets("Facture").Cells(13 + i, 1 + j).Select
Selection.Copy
Sheets("Sauvegarde").Cells(NL, c).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
c = c + 1
Next
Next
Application.Visible = True 'Pour afficher Excel
Application.ScreenUpdating = True 'Pour mettre à jour l'affichage
Sheets("Facture").Activate
Range("E4").Select
MsgBox "Les données sont enregistrées selon le request number " & Worksheets("Facture").Range("E4").Value, vbOKOnly + vbInformation, "ENREGISTREMENT COMPLET"
'Incrémentation de la facture
NR = NR + 1
Else
MsgBox "Le Request number existe déjà dans la feuille Sauvegarde, Le request number est " & Worksheets("Facture").Range("E4").Value, vbOKOnly + vbExclamation, "Request Number Connu"
End If
End Sub
Le code s'arrête aux lignes suivantes avec les messages respectifs suivants :
Code:
Sheets("Facture").Cells(4, 5).Select
Selection.Copy
Il me dit que la fonction Select ne peut fonctionner.
Avez-vous une idée du problème ?
J'espère pouvoir laisser cet exemple pour une personne ultérieure 🙂
D'avance merci.