Macro de condition dans excel
Résolu
JBtheDarkman
Messages postés
17
Date d'inscription
Statut
Membre
Dernière intervention
-
JBtheDarkman Messages postés 17 Date d'inscription Statut Membre Dernière intervention -
JBtheDarkman Messages postés 17 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai de nouveau un petit problème.
Je voudrais choisir une d'ouvrir une feuille de calcul ou un autre en fonction du résultat d'une cellule.
Voici l'exemple: Si D8 = ToTo ouvre feuil2
si elle n'égale pas toto ouvre feuil3
Voici ma première ligne de code mais je sais pas comment la terminé.
Application.ScreenUpdating = False
If Range("D8").Value = "Allo" Then
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Date").PrintOut Copies:=Sheets("Étiquette Date").Range("E2")
If Not "Allo"
Merci de votre aide précieuse.
J'ai de nouveau un petit problème.
Je voudrais choisir une d'ouvrir une feuille de calcul ou un autre en fonction du résultat d'une cellule.
Voici l'exemple: Si D8 = ToTo ouvre feuil2
si elle n'égale pas toto ouvre feuil3
Voici ma première ligne de code mais je sais pas comment la terminé.
Application.ScreenUpdating = False
If Range("D8").Value = "Allo" Then
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Date").PrintOut Copies:=Sheets("Étiquette Date").Range("E2")
If Not "Allo"
Merci de votre aide précieuse.
A voir également:
- Macro de condition dans excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
5 réponses
bonjour
peut etre quelque chose qui ressemble à ça
If Range("D8").Value = "toto" Then
Sheets("Feuil2").Select
Else
Sheets("Feuil3").Select
End If
bonne suite
peut etre quelque chose qui ressemble à ça
If Range("D8").Value = "toto" Then
Sheets("Feuil2").Select
Else
Sheets("Feuil3").Select
End If
bonne suite
J'ai essayé la ligne de code, mais j'ai toujours l'erreur Block if sans end if.
Je vais mettre la ligne de code au complet, peut-être pourrais tu voir l'erreur.
Merci pour ta réponse extrêmement rapide.
Private Sub CommandButton2_Click()
'
Application.ScreenUpdating = False
If Range("D8")= "ToTo" Then
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Date").PrintOut Copies:=Sheets("Étiquette Date").Range("E2")
Else
' Parcourt les Feuilles de la 1ème à la dernière
For sh = 1 To Sheets.Count
With Sheets(sh).Range("d1")
' recherche la valeur située en 'D8' sur la première feuille
Set t = .Find(Sheets("Choix").Range("D8").Value, LookIn:=xlValues)
If Not t Is Nothing Then
' Si la valeur est trouvée, alors
' Active la feuille contenant cette valeur
Sheets(sh).Activate
' Récupère l'adresse de la cellule trouvée et la selectionne
'Nom du Client
.Range("B1").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B1:E1")
'Numero de la piece
.Range("B3").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B5:E5")
'Description de la piece
.Range("B5").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B3:E3")
Sheets("Étiquette Pièce").Select
'
'
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Pièce").PrintOut Copies:=Sheets("Étiquette Pièce").Range("G6")
Sheets("Choix").Select
Exit Sub
End If
End With
Next
Application.ScreenUpdating = True
End Sub
Merci encore de ton aide.
Je vais mettre la ligne de code au complet, peut-être pourrais tu voir l'erreur.
Merci pour ta réponse extrêmement rapide.
Private Sub CommandButton2_Click()
'
Application.ScreenUpdating = False
If Range("D8")= "ToTo" Then
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Date").PrintOut Copies:=Sheets("Étiquette Date").Range("E2")
Else
' Parcourt les Feuilles de la 1ème à la dernière
For sh = 1 To Sheets.Count
With Sheets(sh).Range("d1")
' recherche la valeur située en 'D8' sur la première feuille
Set t = .Find(Sheets("Choix").Range("D8").Value, LookIn:=xlValues)
If Not t Is Nothing Then
' Si la valeur est trouvée, alors
' Active la feuille contenant cette valeur
Sheets(sh).Activate
' Récupère l'adresse de la cellule trouvée et la selectionne
'Nom du Client
.Range("B1").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B1:E1")
'Numero de la piece
.Range("B3").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B5:E5")
'Description de la piece
.Range("B5").Offset(0, -3).Copy Destination:=Sheets("Étiquette Pièce").Range("B3:E3")
Sheets("Étiquette Pièce").Select
'
'
Application.ActivePrinter = "Wasp WPL-305 sur Ne01:"
Sheets("Étiquette Pièce").PrintOut Copies:=Sheets("Étiquette Pièce").Range("G6")
Sheets("Choix").Select
Exit Sub
End If
End With
Next
Application.ScreenUpdating = True
End Sub
Merci encore de ton aide.
Bonsoir,
Au passage, il manque un [End If] entre [Next] et [Application.ScreenUpdating = True]
Au passage, il manque un [End If] entre [Next] et [Application.ScreenUpdating = True]
Merci j'ai une autre question, si j'aurais plusieur choix de toto
exemple toto - 1
toto - 2
Comment écrirais tu cette ligne pour que tout ce qui commence par toto soit pris en compte sans être oubligé de toutes les nommé?
If Range("D8")= "ToTo" Then
Merci parce que ta dernière réponse a réglé une partit de mon problème.
exemple toto - 1
toto - 2
Comment écrirais tu cette ligne pour que tout ce qui commence par toto soit pris en compte sans être oubligé de toutes les nommé?
If Range("D8")= "ToTo" Then
Merci parce que ta dernière réponse a réglé une partit de mon problème.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question