Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux" wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux" <Eddielesbonstuyaux@discussions.microsoft.com> wrote
in message news:C30B6391-0B36-487C-9FCE-597F2593AAD9@microsoft.com...
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux" wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
Bonjour,
peux-tu mettre ton classeur à disposition sur cjoint car formellement ta
procédure ne présente pas de problème.
Par ailleurs, j'aurais deux remarques:
-il ne t'est pas nécessaire de selectionner les feuilles car celà
ralentit ta macro sauf si tu en as une necessité absolue
-le fait de parcourir la collection Sheets peut occasionner une erreur
si une des feuilles n'est pas du type attendu pour pouvoir ensuite
utiliser la méthode Find sur un range ( ex : une feuille graphique).Il
vaut mieux utiliser la collection Worksheets.
A+Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ; motif :
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux"
wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:
Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux" <Eddielesbonstuyaux@discussions.microsoft.com>
wrote
in message news:C30B6391-0B36-487C-9FCE-597F2593AAD9@microsoft.com...
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux"
wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
C'est Loop Until Cellule Is Nothing qui cause l'erreur quand NGL se trouve
seulement dans des formules.
Essaie ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
If Cellule Is Nothing Then Exit Do
Loop Until Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
"Eddie les bons tuyaux" wrote
in message news:J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux"
wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
C'est Loop Until Cellule Is Nothing qui cause l'erreur quand NGL se trouve
seulement dans des formules.
Essaie ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
If Cellule Is Nothing Then Exit Do
Loop Until Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
"Eddie les bons tuyaux" <Eddielesbonstuyaux@discussions.microsoft.com> wrote
in message news:B2EC7CF0-0917-4D6A-AFB1-DA5DCF6CCF06@microsoft.com...
J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:
Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux" <Eddielesbonstuyaux@discussions.microsoft.com>
wrote
in message news:C30B6391-0B36-487C-9FCE-597F2593AAD9@microsoft.com...
Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.
C'est Loop Until Cellule Is Nothing qui cause l'erreur quand NGL se trouve
seulement dans des formules.
Essaie ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
If Cellule Is Nothing Then Exit Do
Loop Until Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une formule
NGL."
End Sub
"Eddie les bons tuyaux" wrote
in message news:J'ai apporté les modifs que tu me proposais ; hélas, je reçois toujours le
même message d'erreur.
"Mishell" wrote:Bonjour.
Essaie comme ceci:
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
If Adr = "" Then
Adr = Cellule.Address
End If
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Feuille.Cells.FindNext(ActiveCell)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Feuille.Protect
Application.ScreenUpdating = True
Adr = ""
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Cordialement
Mishell
"Eddie les bons tuyaux"
wrote
in message news:Bonjour,
Pour copier coller toutes les cellules d'un classeur comportant une
formule
incluant la chaine de caractères "NGL", j'ai écrit la macro suivante :
Sub RemplacerNGLparValeur1()
'Remplace toutes les formules NGL d'un classeur par leur valeur
Dim Cellule As Range, Feuille As Worksheet
Dim Adr As String
For Each Feuille In Sheets
Feuille.Select
Feuille.Unprotect
Feuille.Visible = True
' Application.ScreenUpdating = False
Set Cellule = Feuille.Cells.Find("NGL", LookIn:=xlFormulas)
If Not Cellule Is Nothing Then
Adr = Cellule.Address
Do
Cellule.Copy
Cellule.PasteSpecial xlPasteValues
Set Cellule = Cells.FindNext(Cellule)
Loop Until Cellule Is Nothing Or Cellule.Address = Adr
End If
Range("A1").Select
Feuille.Protect
Application.ScreenUpdating = True
Next Feuille
MsgBox "Ce classeur ne contient plus aucune cellule comportant une
formule
NGL."
End Sub
Malheureusement, dès qu'on arrive en bas d'une feuille, la macro plante
sur
le code " Loop Until Cellule Is Nothing Or Cellule.Address = Adr" ;
motif
:
Variable objet ou variable de bloc with non définie".
Quelle erreur ai-je pu commettre ?
Merci d'avance de vos lumières.