Changer en masse code vba est possible?

anthooooony

XLDnaute Occasionnel
Bonjour à tous,

Savez vous s'il est possible de changer en masse un code vba qui se trouve dans l explorateur?

En faite j'ai fait pour une 50ène de fichiers une condition qui était celle de se lancer si un user précis fermé le fichier, seulement un des users est parti un autre est arrivé, et il faut que je change tout :D

Je sais plus ou moins changer une celulle, des feuilles etc mais taper directement dans le vba je ne sais pas.

Merci pour votre aide


Anthooooony


Private Sub Workbook_BeforeClose(Cancel As Boolean)

If Environ("UserName") = "RC1194" Or Environ("UserName") = "IBD496" Then

Sheets("Page de garde").Activate
Range("B4").Select
ActiveCell.FormulaR1C1 = "=TODAY()-7"
Range("B5") = DateSerial(Year(Range("B4")), Month(Range("B4")), 1)
 

camarchepas

XLDnaute Barbatruc
Re : Changer en masse code vba est possible?

Bonjour Anthoony,

Voici un début de réponse :

Attention la référence VBa est à déclarer

Code:
Option Explicit
Sub modif()


Dim VBComp As VBComponent
Dim Ancien As String, Nouveau As String, Cible As String
Dim I As Long
With ActiveWorkbook.VBProject.VBComponents("thisworkbook").CodeModule
    ' pour le remplacement d'une ligne entière
    For I = 1 To .CountOfLines
    Cible = .Lines(I, 1)
    If InStr(1, Cible, "IBD496") > 1 Then
        Nouveau = Replace(.Lines(I, 1), "IBD496", "IU1232")
        .ReplaceLine I, Nouveau
    End If
Next
End With
End Sub
 

Pièces jointes

  • ReferenceVBA.xlsx
    50.7 KB · Affichages: 52

Jam

XLDnaute Accro
Re : Changer en masse code vba est possible?

Salut à tous,

Suis pas certain d'avoir bien compris ta demande, mais si c'est pour juste changer un "mot" dans un module ou une procédure ou un projet, il suffit juste de faire un Recherche - Remplacer comme dans une feuille c.f. capture suivante:
RechercheRemplaceVBE.jpg

Bon courage
 

anthooooony

XLDnaute Occasionnel
Re : Changer en masse code vba est possible?

Bonjour et merci à tous

En faite, j'ai une macro qui met à jour tous mes fichiers issus d'un meme dossier
Je mets ma base de donnée dans Accèss, ensuite j'ai fait tout mes modeles de fichiers excel avec plein de tcd dynamique qui pointent sur cette base. Pour ce faire chaque mois je dois mettre tous les fichiers à jour environ 44.
La macro pour ouvrir tout les fichiers d"un mm dossier pour ceux que ça interessent est ci dessous.


Sub Macro1()
Dim tempo
tempo = Timer

Dim Fichier As String, Chemin As String
Dim Wb As Workbook
Chemin = "R:\CSP STATS\Litiges\Litiges Agences\"
Fichier = Dir(Chemin & "*.xlsm")

Do While Fichier <> ""
Set Wb = Workbooks.Open(Chemin & Fichier)
Application.DisplayAlerts = False
ActiveWorkbook.RefreshAll
'suite de la procedure
'
Wb.Close True
Application.DisplayAlerts = True
Set Wb = Nothing
Fichier = Dir
Loop

'MsgBox ("Les fichiers ont été mis à jour !!!")
MsgBox Timer - tempo

End Sub


La, au fur et à mesure, et les ouvre mets à jour crée des pdf et compagnies, en workbook close.

Donc comme j'ai un gros volume de fichier je cherchais un moyen de modifier en masse un bout de code faisant partie de chaque fichier(ce sont des agences).

Merci CANEMARCHE pas je vais essayer d'adapter ma macro à la tienne.

A bientot

Anthooooony
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 848
Membres
103 974
dernier inscrit
chmikha