Salut à toutes et à tous,
Ma boîte est récemment passée sout SharePoint à la place de serveurs de fichiers. De plus on en profite pour mieux gérer les fichiers et dossiers ...
Du coup, la rh doit modifier l'arborescence des fichiers des agents (+ de 3500 ...)
du coup, j'ai mis en place ces deux macros qui font bien ce que je veux :
Modifier le dossier de l'agent (virer les espaces et les accents)
Dans chaque dossier de l'agents on à des sous dossiers existants on les renomme (une dizaine de sous dossiers.
Je ne touche pas aux documents placés dans ces dossiers.
'cocher la référence Microsoft Scripting Runtime
Mon problème c'est que pour que ce code fonctionne, il faut, au préalable que j'active la fonction de synchronisation.
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 Sub parcourir_agents() On Error Resume Next Dim chemin As String Dim nomsousdossier As String Dim oFSO As Scripting.FileSystemObject Dim oFld As Scripting.Folder 'Instanciation du FSO Set oFSO = New Scripting.FileSystemObject 'Instanciation du dossier chemin = Feuil1.Range("D3") 'cette cellule stocke le chemin sous le forme "C:\Users\GG\Ma_boite\DRH_00_DOSSIERS_AGENTS\" Set oFld = oFSO.GetFolder(chemin) 'chemin complet du dossier 'parcour la collection For Each sousdossier In oFld.SubFolders Call Renommer_dossier(sousdossier) sousdossier.Name = Replace(sousdossier.Name, " ", "_") sousdossier.Name = Replace(sousdossier.Name, "é", "e") sousdossier.Name = Replace(sousdossier.Name, "è", "e") Next sousdossier End Sub Sub Renommer_dossier(chemin) Dim nomsousdossier As String Dim oFSO As Scripting.FileSystemObject Dim oFld As Scripting.Folder 'Instanciation du FSO Set oFSO = New Scripting.FileSystemObject 'Instanciation du dossier Set oFld = oFSO.GetFolder(chemin) 'chemin complet du dossier 'parcour la collection et renomme For Each sousdossier In oFld.SubFolders Select Case sousdossier.Name Case "Arrêtés" sousdossier.Name = "02_Arretes" MkDir chemin & "\10_Discipline" Case "Contractuel" sousdossier.Name = "03_Contractuel" Case "Courriers" sousdossier.Name = "04_Courriers" Case "Divers" sousdossier.Name = "05_Divers" Case "État civil" sousdossier.Name = "01_Etat_civil" MkDir chemin & "\" & "\01_Etat_civil\Recrutement" Case "Formation" sousdossier.Name = "07_Formation" Case "Maladie" sousdossier.Name = "06_Maladie" Case "Médailles" sousdossier.Name = "09_Medailles" Case "Retraite" sousdossier.Name = "11_Retraite" Case "SFT" sousdossier.Name = "08_Entretiens_Evaluations" End Select Next sousdossier End Sub
Du coup, il faut du temps pour mettre les info sur le poste et ...
La même chose pour que les modifications se répercutent sur le web.
Est il possible de "taper" directement le SharePoint?
Si oui, comment fait on ?
Quelles modifications apporter à mon code.
Dans l'attente de vos réponses averties.
GG
Partager