Boucle pour plusieur valeur

Résolu
Signaler
Messages postés
2
Date d'inscription
mercredi 5 octobre 2011
Statut
Membre
Dernière intervention
5 octobre 2011
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour,

Voici mon code :

Sub Prep()

Dim Nom As String
Dim test As String
Dim test2 As String
Dim Semaine As String
Dim Titre1 As String




Nom = InputBox("Nom ?")
Semaine = InputBox("Semaine ?")
Semaine = "S" & Semaine


'recherche de la colone sur la copie Préparation hétérogène Direct Shipment
Windows("hebdo.xls").Activate
Sheets(Semaine).Activate
Cells.Find("Préparation hétérogène Direct Shipment").Activate
test = ActiveCell.Column
test = test + 1
Titre1 = WorksheetFunction.VLookup(Nom, Sheets(Semaine).Range("A1:Z100"), test, False)


'Recherche de la case ou copier la valeur
Windows("individuel.xlsm").Activate
Sheets(Nom).Activate
'Verification que la colonne existe
If Cells.Find("Préparation hétérogène Direct Shipment") vide Then
Cells.Find("Préparation hétérogène Direct Shipment").Activate
test = ActiveCell.Column
With Worksheets(1).Range("a1:z8")
Cells.Find(Semaine).Activate
test2 = ActiveCell.Row
End With
'Copie de la valeur dans la bonne case
Range("A1:z8").Cells(0 + test2, 0 + test).Value = Titre1
End If




End Sub


Je cherche a changer "Préparation hétérogène Direct Shipment" contre un variable
Et faire une boucle pour chaque valeur posible de cette variable

3 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
240
Ben alors ===>> tu as eu ta réponse, non ?
et dans ce cas (puisque l'on voit maintenant moins mal ce que tu entends par boucle) : ===>> regarde ce mécanisme (et adapte) :
titi = array("Préparation hétérogène Direct Shipment","Préparation hétérogène Pool Points Shipments","Réapprovisionnement picking CHIMIE","Déchargement Palettes Homogènes CHIMIE")
je m'arrête ici, hein ... (à toi de comprendre ...)
for each elmt in titi
  'MsgBox elmt
 ' ton traitement de recherche sur elmt

next


si tu "ne vois" pas ===>> enlève le ' à ' msgbox elmt et tu vas vite comprendre*
Bon amusement.



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
240
Bonjour,

Pas vraiment certain d'avoir compris, car la chose, telle qu'exprimée, parait bien trop simple pour justifier la question.
Je réponds donc à ce qui a été exprimé, tel qu'exprimé :
Dim toto as string
toto = "Préparation hétérogène Direct Shipment"
et tu remplace partout ailleurs la chaine "Préparation hétérogène Direct Shipment" par toto !
Quant à :
Et faire une boucle pour chaque valeur posible de cette variable

je suppose que tu parles du parcours de toutes les occurrences ?
Si c'est çà : tu as un exemple clair dans l'aide VBA pour Find !
Si ce n'est pas ça, c'est quoi, que tu veux dire ?
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
2
Date d'inscription
mercredi 5 octobre 2011
Statut
Membre
Dernière intervention
5 octobre 2011

c'est a dire que je doit repeter ce code avec les valeur :

Chargement CHIMIE
Gerbage CHIMIE
Préparation hétérogène Direct Shipment
Préparation hétérogène Pool Points Shipments
Réapprovisionnement picking CHIMIE
Déchargement Palettes Homogènes CHIMIE
Identification radio Palettes Homogènes CHIMIE
Dégerbage palette CHIMIE
Eclatement Tri Palette Hétérogène CHIMIE

A la place de faire un copier coller du code et changer "Préparation hétérogène Direct Shipment"
je voudrai utiliser une variable et faire une boucle pour utiliser chaque valeur