Lors de l'exécution du code ci-dessous curieusement au point 2 ... ça sort du Sub et ça va Í la prochaine macro malgré le On Error Resume Next
Auriez-vous déjÍ expérimenté une telle situation ou pourriez-vous avoir une idée du pourquoi et de la façon de pouvoir corriger la situation?
Merci Í l'avance.
'******************************************************************************
On Error Resume Next
1.Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_RegulInRange").Cells.SpecialCells(xlCellTypeFormulas).ClearContents
Bonjour, Avec la méthode SpecialCells, tu as ceci : le type et la valeur Le type = xlCellTypeFormulas -> OK Mais pour ce qui est de Valeur, dans le tableau ci-dessous, voici toutes les valeurs possibles selon le contenu. Afin de n'avoir qu'une ligne de code, tu peux additionner les valeurs selon ce que tu veux faire. Pour tout supprimer, tu écris par exemple: On error resume next Range("K1:K2").SpecialCells(xlCellTypeFormulas, 23).ClearContents 23 = la somme des valeurs selon les différents contenus de la cellule Nom Valeur Description xlErrors 16 Cellules contenant des erreurs. xlLogical 4 Cellules contenant des valeurs logiques. xlNumbers 1 Cellules contenant des valeurs numériques. xlTextValues 2 Cellules contenant du texte. MichD
Avec la méthode SpecialCells, tu as ceci : le type et la valeur
Le type = xlCellTypeFormulas -> OK
Mais pour ce qui est de Valeur, dans le tableau ci-dessous, voici toutes
les valeurs possibles selon le contenu. Afin de n'avoir qu'une ligne de
code, tu peux additionner les valeurs selon ce que tu veux faire.
Pour tout supprimer, tu écris par exemple:
On error resume next
Range("K1:K2").SpecialCells(xlCellTypeFormulas, 23).ClearContents
23 = la somme des valeurs selon les différents contenus de la cellule
Nom Valeur Description
xlErrors 16 Cellules contenant des erreurs.
xlLogical 4 Cellules contenant des valeurs logiques.
xlNumbers 1 Cellules contenant des valeurs numériques.
xlTextValues 2 Cellules contenant du texte.
Bonjour, Avec la méthode SpecialCells, tu as ceci : le type et la valeur Le type = xlCellTypeFormulas -> OK Mais pour ce qui est de Valeur, dans le tableau ci-dessous, voici toutes les valeurs possibles selon le contenu. Afin de n'avoir qu'une ligne de code, tu peux additionner les valeurs selon ce que tu veux faire. Pour tout supprimer, tu écris par exemple: On error resume next Range("K1:K2").SpecialCells(xlCellTypeFormulas, 23).ClearContents 23 = la somme des valeurs selon les différents contenus de la cellule Nom Valeur Description xlErrors 16 Cellules contenant des erreurs. xlLogical 4 Cellules contenant des valeurs logiques. xlNumbers 1 Cellules contenant des valeurs numériques. xlTextValues 2 Cellules contenant du texte. MichD
rmill...
Bonjour Í nouveau. Ça fonctionne. Je ne connaissais pas cette méthode. Je vais l'utiliser. Merci. Curieusement cependant cela fait plusieurs années que j'utilise la façon dont je vous ai décrite auparavant et Í plusieurs autres endroits. Mais sur 2 fichiers provenant du même endroit Í a ne fonctionne pas mais votre méthode ... oui.
Bonjour Í nouveau.
Ça fonctionne. Je ne connaissais pas cette méthode. Je vais l'utiliser. Merci.
Curieusement cependant cela fait plusieurs années que j'utilise la façon dont je vous ai décrite auparavant et Í plusieurs autres endroits. Mais sur 2 fichiers provenant du même endroit Í a ne fonctionne pas mais votre méthode ... oui.
Bonjour Í nouveau. Ça fonctionne. Je ne connaissais pas cette méthode. Je vais l'utiliser. Merci. Curieusement cependant cela fait plusieurs années que j'utilise la façon dont je vous ai décrite auparavant et Í plusieurs autres endroits. Mais sur 2 fichiers provenant du même endroit Í a ne fonctionne pas mais votre méthode ... oui.
rmill...
Bonjour, Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée. J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
Bonjour,
Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents
l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée.
J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
Bonjour, Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée. J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
MichD
Le 25/11/21 Í 12:45, a écrit :
Bonjour, Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée. J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
Bonjour, Je n'ai pas vraiment compris ta question. L'erreur "#REF!" est obtenue par exemple, si tu supprimes une cellule ayant un "NOM" (plage nommée") présente dans une formule. Un autre exemple si tu supprimes la cellule "A1" dans une formule du type Decaler(A1....), tu as une erreur de type #ref! Cette ligne de code va supprimer le contenu de la cellule. Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents La méthode "SpecialCells" génère une erreur seulement si dans la plage de cellules désignées, il n'y a pas au moins une occurrence du type de cellules que la ligne de code désigne. On emploie "specialcells" comme ceci : On error resume next Range("A1:H200").specialCells(.....) On error goto0 Afin d'éviter l'arrêt de l'exécution du code de la procédure. MichD
Le 25/11/21 Í 12:45, rmill...@gmail.com a écrit :
Bonjour,
Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents
l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée.
J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
Bonjour,
Je n'ai pas vraiment compris ta question.
L'erreur "#REF!" est obtenue par exemple, si tu supprimes une cellule
ayant un "NOM" (plage nommée") présente dans une formule. Un autre
exemple si tu supprimes la cellule "A1" dans une formule du type
Decaler(A1....), tu as une erreur de type #ref!
Cette ligne de code va supprimer le contenu de la cellule.
Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas,
xlErrors).ClearContents
La méthode "SpecialCells" génère une erreur seulement si dans la plage
de cellules désignées, il n'y a pas au moins une occurrence du type de
cellules que la ligne de code désigne.
On emploie "specialcells" comme ceci :
On error resume next
Range("A1:H200").specialCells(.....)
On error goto0
Afin d'éviter l'arrêt de l'exécution du code de la procédure.
Bonjour, Je viens de constater qu'en utilisant Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents ou dans le format Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xl-4123, 16).ClearContents l'erreur n'est pas gérée car le type d'erreur est un #REF dans une cellule avec formule. Une ligne délimitant une zone avait été supprimée. J'aurais cru que cela aurait été le cas. Est-moi qui ne procède pas de la bonne façon ou auriez-vous une suggestion pour gérer ceci? Merci Í l'avance.
Bonjour, Je n'ai pas vraiment compris ta question. L'erreur "#REF!" est obtenue par exemple, si tu supprimes une cellule ayant un "NOM" (plage nommée") présente dans une formule. Un autre exemple si tu supprimes la cellule "A1" dans une formule du type Decaler(A1....), tu as une erreur de type #ref! Cette ligne de code va supprimer le contenu de la cellule. Workbooks(Var_NomXLCase).Sheets(Var_Sheet).Range("CN_NonReportInRange").Cells.SpecialCells(xlCellTypeFormulas, xlErrors).ClearContents La méthode "SpecialCells" génère une erreur seulement si dans la plage de cellules désignées, il n'y a pas au moins une occurrence du type de cellules que la ligne de code désigne. On emploie "specialcells" comme ceci : On error resume next Range("A1:H200").specialCells(.....) On error goto0 Afin d'éviter l'arrêt de l'exécution du code de la procédure. MichD