Et =E2=80=A6 c'est assez long. Actuellement je vais d'un module =C3=A0 l'au=
tre et je fais des Rechercher / Remplacer.
Serait-ce possible de me b=C3=A2tir une macro avec laquelle je pourrais mod=
ifier tout ce dont j'ai besoin? Si oui comment? Est-ce que le code peut =C3=
=AAtre =C3=A0 l'int=C3=A9rieur du m=C3=AAme fichier et dans un autre module=
ou dans un autre fichier?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour, Cette procédure remplace l'expression recherchée par une autre, et ce dans tout le projetVBA d'un classeur. Insère un module dans lequel tu vas utiliser seulement cette procédure. Définis les 3 variables mentionnées. Teste la procédure sur une copie de ton fichier d'abord. '------------------------------------------------------- Sub Modifier_Expression_ProjetVBA() Dim ChaineRecherchée As String Dim ChaineRemplace As String Dim Trouver As Integer Dim I As Integer Dim Module As Object Dim ModuleCherché As String '***********VARIABLES À DÉFINIR************** ChaineRecherchée = Workbooks(Var_CaseMaj).Sheets("Validations").Range("CN_MenuVersion").Value = 3.31 ChaineRemplace = Workbooks(Var_CaseMaj).Sheets("Validations").Range("CN_MenuVersion").Value = 3.32 'Nom Du module où tu inscris cette procédure ModuleCherché = "Module1" 'Attention orthographe + Casse '******************************************** For Each Module In ActiveWorkbook.VBProject.VBComponents With Module.CodeModule 'Si le module ou est mis cette proc se nomme "Module1" If Module.Name <> ModuleCherché Then For I = .CountOfLines To 1 Step -1 Trouver = InStr(.Lines(I, 1), ChaineRecherchée) If Trouver <> 0 Then .ReplaceLine I, Left(.Lines(I, 1) _ , Trouver - 1) & ChaineRemplace & _ Mid(.Lines(I, 1), Trouver + Len(ChaineRecherchée) _ , Len(.Lines(I, 1))) End If Next I End If End With Next Set Module = Nothing End Sub '------------------------------------------------------- MichD
Bonjour,
Cette procédure remplace l'expression recherchée par une autre, et ce
dans tout le projetVBA d'un classeur.
Insère un module dans lequel tu vas utiliser seulement cette procédure.
Définis les 3 variables mentionnées.
Teste la procédure sur une copie de ton fichier d'abord.
'-------------------------------------------------------
Sub Modifier_Expression_ProjetVBA()
Dim ChaineRecherchée As String
Dim ChaineRemplace As String
Dim Trouver As Integer
Dim I As Integer
Dim Module As Object
Dim ModuleCherché As String
'***********VARIABLES À DÉFINIR**************
ChaineRecherchée =
Workbooks(Var_CaseMaj).Sheets("Validations").Range("CN_MenuVersion").Value
= 3.31
'Nom Du module où tu inscris cette procédure
ModuleCherché = "Module1" 'Attention orthographe + Casse
'********************************************
For Each Module In ActiveWorkbook.VBProject.VBComponents
With Module.CodeModule
'Si le module ou est mis cette proc se nomme "Module1"
If Module.Name <> ModuleCherché Then
For I = .CountOfLines To 1 Step -1
Trouver = InStr(.Lines(I, 1), ChaineRecherchée)
If Trouver <> 0 Then
.ReplaceLine I, Left(.Lines(I, 1) _
, Trouver - 1) & ChaineRemplace & _
Mid(.Lines(I, 1), Trouver + Len(ChaineRecherchée) _
, Len(.Lines(I, 1)))
End If
Next I
End If
End With
Next
Set Module = Nothing
End Sub
'-------------------------------------------------------
Bonjour, Cette procédure remplace l'expression recherchée par une autre, et ce dans tout le projetVBA d'un classeur. Insère un module dans lequel tu vas utiliser seulement cette procédure. Définis les 3 variables mentionnées. Teste la procédure sur une copie de ton fichier d'abord. '------------------------------------------------------- Sub Modifier_Expression_ProjetVBA() Dim ChaineRecherchée As String Dim ChaineRemplace As String Dim Trouver As Integer Dim I As Integer Dim Module As Object Dim ModuleCherché As String '***********VARIABLES À DÉFINIR************** ChaineRecherchée = Workbooks(Var_CaseMaj).Sheets("Validations").Range("CN_MenuVersion").Value = 3.31 ChaineRemplace = Workbooks(Var_CaseMaj).Sheets("Validations").Range("CN_MenuVersion").Value = 3.32 'Nom Du module où tu inscris cette procédure ModuleCherché = "Module1" 'Attention orthographe + Casse '******************************************** For Each Module In ActiveWorkbook.VBProject.VBComponents With Module.CodeModule 'Si le module ou est mis cette proc se nomme "Module1" If Module.Name <> ModuleCherché Then For I = .CountOfLines To 1 Step -1 Trouver = InStr(.Lines(I, 1), ChaineRecherchée) If Trouver <> 0 Then .ReplaceLine I, Left(.Lines(I, 1) _ , Trouver - 1) & ChaineRemplace & _ Mid(.Lines(I, 1), Trouver + Len(ChaineRecherchée) _ , Len(.Lines(I, 1))) End If Next I End If End With Next Set Module = Nothing End Sub '------------------------------------------------------- MichD
Roland Miller
Bonjour, Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès. Auriez-vous une idée de comment faire? Merci à l'avance. Workbooks(wbk2).VBProject.Unprotect Password:="MoDePasse"
Bonjour,
Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès.
Auriez-vous une idée de comment faire? Merci à l'avance.
Bonjour, Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès. Auriez-vous une idée de comment faire? Merci à l'avance. Workbooks(wbk2).VBProject.Unprotect Password:="MoDePasse"
MichD
Le 24/01/20 à 23:47, Roland Miller a écrit :
Bonjour, Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès. Auriez-vous une idée de comment faire? Merci à l'avance. Workbooks(wbk2).VBProject.Unprotect Password:="MoDePasse"
Bonjour, '------------------------------------------------------------ Sub TestUnprotect() 'Un objet Workbook '"a" représente le mot de passe Call UnprotectVBProject(ThisWorkbook, "a") End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Le 24/01/20 à 23:47, Roland Miller a écrit :
Bonjour,
Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès.
Auriez-vous une idée de comment faire? Merci à l'avance.
'------------------------------------------------------------
Sub TestUnprotect()
'Un objet Workbook
'"a" représente le mot de passe
Call UnprotectVBProject(ThisWorkbook, "a")
End Sub
'------------------------------------------------------------
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
Set vbProj = WB.VBProject
If vbProj.Protection <> 1 Then Exit Sub
Set Application.VBE.ActiveVBProject = vbProj
SendKeys Password & "~~"
Application.VBE.CommandBars(1).FindControl(ID:%78, _
recursive:=True).Execute
End Sub
'------------------------------------------------------------
Bonjour, Ça fonctionne très bien. Mais j'ai d'abord besoin d'ôter la protection du projet VBA. J'ai cherché et tenté certaines lignes de code … mais sans succès. Auriez-vous une idée de comment faire? Merci à l'avance. Workbooks(wbk2).VBProject.Unprotect Password:="MoDePasse"
Bonjour, '------------------------------------------------------------ Sub TestUnprotect() 'Un objet Workbook '"a" représente le mot de passe Call UnprotectVBProject(ThisWorkbook, "a") End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Roland Miller
Bonjour et merci. J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans u n autre Wk (wbk2) que je souhaite enlever le mot de passe. Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-des sous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE". Peut-être y aurait-il un petit ajustement à faire? Merci à l 'avance. '************************************************************************** *** Call UnprotectVBProject(wbk2, "CVCProjectPassword") '***********VARIABLES À DÉFINIR************** NextSearch: ChaineRecherchée = "Pro_SYNCXLCASE"
Bonjour et merci.
J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans u n autre Wk (wbk2) que je souhaite enlever le mot de passe.
Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-des sous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE".
Peut-être y aurait-il un petit ajustement à faire? Merci à l 'avance.
Bonjour et merci. J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans u n autre Wk (wbk2) que je souhaite enlever le mot de passe. Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-des sous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE". Peut-être y aurait-il un petit ajustement à faire? Merci à l 'avance. '************************************************************************** *** Call UnprotectVBProject(wbk2, "CVCProjectPassword") '***********VARIABLES À DÉFINIR************** NextSearch: ChaineRecherchée = "Pro_SYNCXLCASE"
MichD
Le 25/01/20 à 12:27, Roland Miller a écrit :
Bonjour et merci. J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans un autre Wk (wbk2) que je souhaite enlever le mot de passe. Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-dessous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE". Peut-être y aurait-il un petit ajustement à faire? Merci à l'avance. '***************************************************************************** Call UnprotectVBProject(wbk2, "CVCProjectPassword") '***********VARIABLES À DÉFINIR************** NextSearch: ChaineRecherchée = "Pro_SYNCXLCASE"
Comme ceci : '------------------------------------------------------------ Sub TestUnprotect() Dim WK As Workbook Dim MotDePasse As String 'Le classeur dont tu veux déprotéger le projetVBA 'Si ce fichier n'est pas ouvert, il faut l'ouvrir 'Bien sûr, tu dois adapter le chemin et le nom du fichier Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") 'Si le fichier est déjà ouvert 'Set WK = Workbooks("Protection VPAProject.xlsm") 'Définir le mot de passe MotDePasse = "a" Call UnprotectVBProject(WK, MotDePasse) End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Le 25/01/20 à 12:27, Roland Miller a écrit :
Bonjour et merci.
J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans un autre Wk (wbk2) que je souhaite enlever le mot de passe.
Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-dessous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE".
Peut-être y aurait-il un petit ajustement à faire? Merci à l'avance.
'***********VARIABLES À DÉFINIR**************
NextSearch:
ChaineRecherchée = "Pro_SYNCXLCASE"
Comme ceci :
'------------------------------------------------------------
Sub TestUnprotect()
Dim WK As Workbook
Dim MotDePasse As String
'Le classeur dont tu veux déprotéger le projetVBA
'Si ce fichier n'est pas ouvert, il faut l'ouvrir
'Bien sûr, tu dois adapter le chemin et le nom du fichier
Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm")
'Si le fichier est déjà ouvert
'Set WK = Workbooks("Protection VPAProject.xlsm")
'Définir le mot de passe
MotDePasse = "a"
Call UnprotectVBProject(WK, MotDePasse)
End Sub
'------------------------------------------------------------
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
Set vbProj = WB.VBProject
If vbProj.Protection <> 1 Then Exit Sub
Set Application.VBE.ActiveVBProject = vbProj
SendKeys Password & "~~"
Application.VBE.CommandBars(1).FindControl(ID:%78, _
recursive:=True).Execute
End Sub
'------------------------------------------------------------
Bonjour et merci. J'ai fait exactement comme votre code proposé. Mais ça n'ôte pas le mot de passe du projet. Mais je dois préciser que c'est dans un autre Wk (wbk2) que je souhaite enlever le mot de passe. Curieusement lorsque j'exécute le code ça ajoute un retour à la ligne … dans le code en cours en dessous de NextSearch:. Ci-dessous on voit le résultat après avoir exécuté le code à 3 ou 4 reprises. Car au début il n'y avait pas de retour à la ligne entre NextSearch: et ChaineRecherchée = "Pro_SYNCXLCASE". Peut-être y aurait-il un petit ajustement à faire? Merci à l'avance. '***************************************************************************** Call UnprotectVBProject(wbk2, "CVCProjectPassword") '***********VARIABLES À DÉFINIR************** NextSearch: ChaineRecherchée = "Pro_SYNCXLCASE"
Comme ceci : '------------------------------------------------------------ Sub TestUnprotect() Dim WK As Workbook Dim MotDePasse As String 'Le classeur dont tu veux déprotéger le projetVBA 'Si ce fichier n'est pas ouvert, il faut l'ouvrir 'Bien sûr, tu dois adapter le chemin et le nom du fichier Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") 'Si le fichier est déjà ouvert 'Set WK = Workbooks("Protection VPAProject.xlsm") 'Définir le mot de passe MotDePasse = "a" Call UnprotectVBProject(WK, MotDePasse) End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Roland Miller
Merci encore. Sincèrement désolé … un détail m'échappe a ssurément Call UnprotectVBProject(WK, MotDePasse) … vs Sub TestUnprotect() ? ?? Peut-être me remettre le code au complet? J'ai aussi lu qu'il ne semble pas être possible d'y arriver sans un Se ndKey? Quand pensez-vous? Merci à l'avance.
Merci encore.
Sincèrement désolé … un détail m'échappe a ssurément
Call UnprotectVBProject(WK, MotDePasse) … vs Sub TestUnprotect() ? ??
Peut-être me remettre le code au complet?
J'ai aussi lu qu'il ne semble pas être possible d'y arriver sans un Se ndKey? Quand pensez-vous? Merci à l'avance.
Merci encore. Sincèrement désolé … un détail m'échappe a ssurément Call UnprotectVBProject(WK, MotDePasse) … vs Sub TestUnprotect() ? ?? Peut-être me remettre le code au complet? J'ai aussi lu qu'il ne semble pas être possible d'y arriver sans un Se ndKey? Quand pensez-vous? Merci à l'avance.
MichD
Ce code est complet et je l'ai testé à plusieurs reprises et il fonctionne correctement. Dans la procédure "TestUnprotect", je te donne le choix à savoir si le fichier Excel dont tu dois déprotéger le projetVBA est ouvert ou fermé. Il faut simplement conserver l'une des deux lignes de code ` 'Si le fichier est fermé en adaptant le chemin et le nom du classeur. Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") Si le fichier est ouvert : Set WK = Workbooks("Protection VPAProject.xlsm") MotDePasse = "a" 'évidemment, tu dois inscrire le mot de passe du fichier. Tu places tout ce code dans un module standard dans un fichier Excel à partir duquel tu lanceras et déprotégeras le classeur dont le code est protégé. Lorsque tu exécutes ce code, qu'est-ce qui se passe? Un message d'erreur? Il s'arrête sur quelle ligne de code? Oui il y a une procédure avec SendKey mais celle-ci est plus "sûre" selon moi. '------------------------------------------------------------ Sub TestUnprotect() Dim WK As Workbook Dim MotDePasse As String 'Le classeur dont tu veux déprotéger le projetVBA 'Si ce fichier n'est pas ouvert, il faut l'ouvrir 'Bien sûr, tu dois adapter le chemin et le nom du fichier Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") 'Si le fichier est déjà ouvert 'Set WK = Workbooks("Protection VPAProject.xlsm") 'Définir le mot de passe MotDePasse = "a" Call UnprotectVBProject(WK, MotDePasse) End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection < 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Ce code est complet et je l'ai testé à plusieurs reprises et il
fonctionne correctement.
Dans la procédure "TestUnprotect", je te donne le choix à savoir si le
fichier Excel dont tu dois déprotéger le projetVBA est ouvert ou fermé.
Il faut simplement conserver l'une des deux lignes de code `
'Si le fichier est fermé en adaptant le chemin et le nom du classeur.
Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm")
Si le fichier est ouvert :
Set WK = Workbooks("Protection VPAProject.xlsm")
MotDePasse = "a" 'évidemment, tu dois inscrire le mot de passe du fichier.
Tu places tout ce code dans un module standard dans un fichier Excel à
partir duquel tu lanceras et déprotégeras le classeur dont le code est
protégé.
Lorsque tu exécutes ce code, qu'est-ce qui se passe? Un message
d'erreur? Il s'arrête sur quelle ligne de code?
Oui il y a une procédure avec SendKey mais celle-ci est plus "sûre"
selon moi.
'------------------------------------------------------------
Sub TestUnprotect()
Dim WK As Workbook
Dim MotDePasse As String
'Le classeur dont tu veux déprotéger le projetVBA
'Si ce fichier n'est pas ouvert, il faut l'ouvrir
'Bien sûr, tu dois adapter le chemin et le nom du fichier
Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm")
'Si le fichier est déjà ouvert
'Set WK = Workbooks("Protection VPAProject.xlsm")
'Définir le mot de passe
MotDePasse = "a"
Call UnprotectVBProject(WK, MotDePasse)
End Sub
'------------------------------------------------------------
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
Set vbProj = WB.VBProject
If vbProj.Protection < 1 Then Exit Sub
Set Application.VBE.ActiveVBProject = vbProj
SendKeys Password & "~~"
Application.VBE.CommandBars(1).FindControl(ID:%78, _
recursive:=True).Execute
End Sub
'------------------------------------------------------------
Ce code est complet et je l'ai testé à plusieurs reprises et il fonctionne correctement. Dans la procédure "TestUnprotect", je te donne le choix à savoir si le fichier Excel dont tu dois déprotéger le projetVBA est ouvert ou fermé. Il faut simplement conserver l'une des deux lignes de code ` 'Si le fichier est fermé en adaptant le chemin et le nom du classeur. Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") Si le fichier est ouvert : Set WK = Workbooks("Protection VPAProject.xlsm") MotDePasse = "a" 'évidemment, tu dois inscrire le mot de passe du fichier. Tu places tout ce code dans un module standard dans un fichier Excel à partir duquel tu lanceras et déprotégeras le classeur dont le code est protégé. Lorsque tu exécutes ce code, qu'est-ce qui se passe? Un message d'erreur? Il s'arrête sur quelle ligne de code? Oui il y a une procédure avec SendKey mais celle-ci est plus "sûre" selon moi. '------------------------------------------------------------ Sub TestUnprotect() Dim WK As Workbook Dim MotDePasse As String 'Le classeur dont tu veux déprotéger le projetVBA 'Si ce fichier n'est pas ouvert, il faut l'ouvrir 'Bien sûr, tu dois adapter le chemin et le nom du fichier Set WK = Workbooks.Open("E:TéléchargementsProtection VPAProject.xlsm") 'Si le fichier est déjà ouvert 'Set WK = Workbooks("Protection VPAProject.xlsm") 'Définir le mot de passe MotDePasse = "a" Call UnprotectVBProject(WK, MotDePasse) End Sub '------------------------------------------------------------ Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection < 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~" Application.VBE.CommandBars(1).FindControl(ID:%78, _ recursive:=True).Execute End Sub '------------------------------------------------------------ MichD
Roland Miller
Bonjour, Désolé … Concernant … Si le fichier est ouvert : Set WK = Workbooks("Protection VPAProject.xlsm") ("Protection VPAProject.xlsm") est le nom du classeur ou? Car lorsqu"on est dans VBA le nom est par exemple … VBAProject(Nom du classeur) Pour éliminer une confusion possible … disons que le nom de mo n classeur est ABC.xlsm est-ce qu'alors la ligne doit être Set WK = Workbooks("ABC.xlsm") ou y a-t'il quelque chose qui m'échappe?
Bonjour,
Désolé …
Concernant …
Si le fichier est ouvert :
Set WK = Workbooks("Protection VPAProject.xlsm")
("Protection VPAProject.xlsm") est le nom du classeur ou?
Car lorsqu"on est dans VBA le nom est par exemple … VBAProject(Nom du classeur)
Pour éliminer une confusion possible … disons que le nom de mo n classeur est ABC.xlsm est-ce qu'alors la ligne doit être Set WK = Workbooks("ABC.xlsm") ou y a-t'il quelque chose qui m'échappe?
Bonjour, Désolé … Concernant … Si le fichier est ouvert : Set WK = Workbooks("Protection VPAProject.xlsm") ("Protection VPAProject.xlsm") est le nom du classeur ou? Car lorsqu"on est dans VBA le nom est par exemple … VBAProject(Nom du classeur) Pour éliminer une confusion possible … disons que le nom de mo n classeur est ABC.xlsm est-ce qu'alors la ligne doit être Set WK = Workbooks("ABC.xlsm") ou y a-t'il quelque chose qui m'échappe?
MichD
Le 27/01/20 à 11:03, Roland Miller a écrit :
Protection VPAProject.xlsm
| Protection VPAProject.xlsm Dans mon exemple, c'est le nom du classeur dont le projetVBA est protégé et dont la procédure est supposée d'ouvrir le projetVBA. Tu remplaces "Protection VPAProject.xlsm" par le nom du classeur dont tu veux ouvrir le projetVBA protégé. MichD
Le 27/01/20 à 11:03, Roland Miller a écrit :
Protection VPAProject.xlsm
| Protection VPAProject.xlsm
Dans mon exemple, c'est le nom du classeur dont le projetVBA est protégé
et dont la procédure est supposée d'ouvrir le projetVBA.
Tu remplaces "Protection VPAProject.xlsm" par le nom du classeur dont
tu veux ouvrir le projetVBA protégé.
| Protection VPAProject.xlsm Dans mon exemple, c'est le nom du classeur dont le projetVBA est protégé et dont la procédure est supposée d'ouvrir le projetVBA. Tu remplaces "Protection VPAProject.xlsm" par le nom du classeur dont tu veux ouvrir le projetVBA protégé. MichD