1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| Sub FaitCopie()
Dim i As Integer
Dim rSort As Range
Dim Counter As Integer
Dim Msg, Style, Title, Help, Ctxt, MyString
Dim Reponse As Integer
For Counter = 26 To 10000 ' Cette boucle cherche la première ligne vide dans la première
i = i + 1 ' colonne.
If Worksheets("002-Découverture").Cells(Counter, 1) = "" And Test(Counter) = False And Worksheets("Saisie").Range("datedecouverture") <> "" Then
' Mes données sont copiers d'une feuille vers une autre
' Exit For TON ERREUR EST ICI
ElseIf Test(Counter) = True Then
' Si le numero du tir existe déjà, on affiche un message d'alerte.
Msg = "Une entrée comportant les mêmes informations existe déjà. Souhaitez-vous écraser les donnés?" ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons.
Title = "Attention " ' Définit le titre.
Help = "DEMO.HLP" ' Définit le fichier d'aide.
Ctxt = 1000 ' Définit le contexte de la rubrique.
Response = MsgBox(Msg, Style, Title, Help, Ctxt) ' Affiche le message.
If Response = vbYes Then ' L'utilisateur a choisi Oui.
' Mes données sont copiers d'une feuille vers une autre
End If
'Exit For TON ERREUR EST ICI
ElseIf Worksheets("Saisie").Range("datedecouverture") = "" Then
Reponse = MsgBox("Il manque la date !", vbInformation + vbOK + vbDefaultButton1, "Attention")
'ICI manque probablement quelque chose ???
End If
Next Counter
'Ici le code de AlainTech avec une petite modif..
'suite à la relecture de l'aide.
'Sinon, erreur
With Sheets("002-Découverture")
Set rSort = Range(.Cells(26, 1), .Cells(Rows.Count, 1).End(xlUp).Offset(0, 12))
rSort.Select
Selection.Sort Key1:=.Cells(26, 1)
End Sub |
Partager