Bonjour,
J'ai actuellement un useform qui me permet de modifier les lignes ( interventions nommés HYD) .
Dans la textbox 4 est situé la date et dans la 15 j'ai le n° de l'intervention .
Les interventions ont toutes un dossier qui les correspond qui est défini avec leurs dates et leurs n°
Par exemple l'HYD ( intervention ) 14 créer en 2015 est ranger dans "C:\Users\nathan\Dropbox\HYD2015\HYD14/
Ici 2015= LaDate et 14= Leparcours ( SNomDossier = HYD et Leparcours )
Lorsque je modifie une intervention , si je modifie l'année , j'aimerais que le fichier de l'année d'avant soit déplacer dans un dossier créer dans la nouvelle année et que l'ancien dossier soit supprimé .
Le code actuel me permet juste de créer un nouveau dossier si celui ci n'existe déja pas dans la nouvelle année ...
J'ai essayer à plusieurs reprise mais je n'est pas réussi , c'est pour cela que je m'adresse à vous .
Voici le code présent aujourd'hui :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
      Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm
Set O = Sheets("RECAPITULATIF") 'définit l'ontglet O
If Nouveau = True Then 'condition : si la variable nouveau est [Vrai]
    Me.Caption = "SAISIE DES INTERVENTIONS" 'définit le titre de la boîter de dialogue
    LI = O.Cells(Application.Rows.Count, 1).End(xlUp).Row + 1 'définit la ligne LI
    TextBox15.Value = WorksheetFunction.Max(O.Columns(2)) + 1 'incrémente le numnéro de l'intervention
 
Else 'sinon
    Me.Caption = "MODIFIER" 'définit le titre de la boîter de dialogue
    LI = ActiveCell.Row 'définit la ligne LI
    TextBox15.Value = O.Cells(LI, 2).Value 'récupèr ele numéro d'intervention
    TextBox5.Value = O.Cells(LI, 4).Value
    TextBox1.Value = O.Cells(LI, 5).Value
    TextBox7.Value = O.Cells(LI, 7).Value
    TextBox2.Value = O.Cells(LI, 8).Value
    TextBox11.Value = O.Cells(LI, 13).Value
TextBox17.Value = O.Cells(LI, 19).Value
 
TextBox4 = Format(O.Cells(LI, 10), "dd/mm/yyyy")
 
 
    TextBox3.Value = O.Cells(LI, 9).Value
    TextBox13.Value = O.Cells(LI, 16).Value
    TextBox12.Value = O.Cells(LI, 15).Value
    TextBox14.Value = O.Cells(LI, 17).Value
    TextBox16.Value = O.Cells(LI, 18).Value
    ComboBox2.Value = O.Cells(LI, 3).Value
    ComboBox6.Value = O.Cells(LI, 6).Value
    ComboBox3.Value = O.Cells(LI, 14).Value
    ComboBox5.Value = O.Cells(LI, 12).Value
    ComboBox4.Value = O.Cells(LI, 11).Value
    ComboBox3.Value = O.Cells(LI, 14).Value
 
End If
 
End Sub
 
Private Sub CommandButton1_Click() 'bouton "VALIDATION"
 
 
For Each CTRL In Me.Controls 'boucle sur tous les contrôles de l'userForm
    'si la propriété [Tag] du contrôle n'est pas vide, renvoie la valeur du contrôle CTRL
    'dans la cellule ligne LI colonne [Tag] (converti en entier) du contrôle, de l'onglet O
    If CTRL.Tag <> "" Then O.Cells(LI, CInt(CTRL.Tag)).Value = CTRL.Value
Next CTRL 'prochain contrôle de la boucle
Sheets("RECAPITULATIF").Select
    Range("A1").Select
 
 
       Dim Ladate As String
        Dim FSO As Object, sNomDossier As String
 
    LeParcours = TextBox15.Value
    Ladate = Format(TextBox4, "yyyy")
      If TextBox4.Value = "" Then
    Ladate = Year(Date)
End If
    sNomDossier = "HYD" & LeParcours
    Set FSO = CreateObject("Scripting.FileSystemObject")
    sChemin = "C:\Users\nathan\Dropbox\HYD" & Ladate & "\" & sNomDossier & "/"
 
        If Not FSO.FolderExists(sChemin) Then FSO.CreateFolder (sChemin)
     Set FSO = Nothing
J'espère que vous m'aurez compris ,
Un grand merci à vous !
Cordialement