Exclure une feuille pendant l'utilisation d'une macro

Bonjour je m'explique j'ai ce code

Sub adaptationdesdonnées()

Dim feuil As Worksheet

For Each feuil In ThisWorkbook.Worksheets

feuil.Cells.Replace What:=".", Replacement:=","

feuil.Cells.Replace What:="+", Replacement:=""

Next feuil

End Sub

donc ce code me permet de remplacer les points par des virgules et les + par un espace je voudrais en plus tabuler chacune de mes feuilles avec comme separateur les ; mais je veut effectuer cette action dans toutes les feuilles sauf la feuille 1 donc si quelqu'un connait un moyen de le faire

voilà j’espère que vous pourrez m'aider merci d'avance

Salut et bienvenue sur le Forum,

Tu peux remplacer

    feuil.Cells.Replace What:=".", Replacement:=","
    feuil.Cells.Replace What:="+", Replacement:=""

par

If feuil.Name <> "feuille 1" Then
    feuil.Cells.Replace What:=".", Replacement:=","
    feuil.Cells.Replace What:="+", Replacement:=""
End If

Cordialement.

merci de ta réponse donc j'ai remplacer et j'ai rajouté une tabulation mais excel me mets une erreur saurait tu me dire pourquoi

cordialement Bwaki

Sub adaptationdesdonnées()

Dim feuil As Worksheet

For Each feuil In ThisWorkbook.Worksheets

If feuil.Name <> "feuille 1" Then

feuil.Cells.Replace What:=".", Replacement:=","

feuil.Cells.Replace What:="+", Replacement:=""

Columns("A:A").Select

Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _

TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _

Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _

:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _

Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1)), TrailingMinusNumbers:=True

End If

Next feuil

End Sub

Tu m'as dit que ta feuille s'appelait feuille 1 alors j'ai écrit cela dans le code

If feuil.Name <> "feuille 1" Then

mais peut-être que ta feuille s'appelle autrement

Si ce n'est pas ça, tu devrais fournir ton fichier ou au moins dire sur quelle ligne ça bloque (la ligne en jaune lorsque tu ouvres le débogueur).

Amicalement.

voila le fichier et excel m'indique l'erreur au niveau du end if

encore merci de me repondre ^^

15macro1.xlsm (83.86 Ko)

Ton histoire est un peu bizarre,

Tout d’abord le code semble sensible à la casse. Donc si tu écris If feuil.Name <> "feuille 1" Then dans ton code mais que la feuille s’appelle ‘Feuille 1’ avec une majuscule, ça ne jouera pas.

Puis, après avoir corrigé cette erreur, je lance le code et lorsqu’il veut exécuter ses actions sur les autres feuilles, ça bloque chez moi sur la ligne en jaune dans l’image ci-dessous.

Mais comme ceci ne fait pas l’objet de ta question et que tu prétends que ça bloque ailleurs chez toi, je ne fais rien à ce propos.

A te relire.

capture

après correction du nom de la feuille 1 je me suis rendue compte que ma macro bloque au même endroit que toi je pense que la partie de code que tu as surligné dans ton message n'est pas bonne car lorsque je la supprime le code marche très bien donc je vais chercher une autre méthode pour séparer les données dans mes colonnes

voila merci beaucoup de ton aide

ps : par contre si tu connait une autre méthode pour séparer les colonnes je suis preneur encore merci

Bonjour,

tente en activant la feuille avant.

Certaines fonctions le nécessite.

De plus tu fais Columns.("A:A")... et Selection.... sans faire référence à la feuille. Tu t'adresses donc toujours à la même feuille, celle active.

eric

Bonsoir,

bonsoir le forum,

une proposition de correction

Sub adaptationdesdonnées()

Dim feuil As Worksheet

For Each feuil In ThisWorkbook.Worksheets
    If feuil.Name <> "Feuille 1" Then 
        feuil.Cells.Replace What:=".", Replacement:=","
        feuil.Cells.Replace What:="+", Replacement:=""
        feuil.Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, TrailingMinusNumbers:=True
    End If

Next feuil
End Sub

ok je vais tester ce que vous m'avez dit (eriiic et h2so4 )et je vous dit si sa a marché


merci a vous 3 le code que h2so4 m'a fourni marche parfaitement et encore merci car grâce a toi je comprend un peu mieux comment effectuer certaines manip

voilà ce sujet est donc résolue

Rechercher des sujets similaires à "exclure feuille utilisation macro"