VBA
Fermé
la pioche
-
22 janv. 2009 à 09:50
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 - 23 janv. 2009 à 12:48
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 - 23 janv. 2009 à 12:48
9 réponses
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
22 janv. 2009 à 09:59
22 janv. 2009 à 09:59
Bonjour,
je suis débutant en VBA ' on l'a tous été un jour
je voudrais m'entrainer en faisant un truc simple ' c'est une bonne idée
par exemple:
si le mot chaussée est écrit dans la plage de cellule A1:B2
' une plage est un ensemble de cellule qui contient au moins une cellule
alors la case C2 sera rempli par chaussée
début de programme :
Sub Repport_cellule2()
' essaie ça
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "chaussée" Then
Cells(2, 3) = "chaussée"
Else
Cells(2, 3) = ""
End If
Next
End Sub
je suis débutant en VBA ' on l'a tous été un jour
je voudrais m'entrainer en faisant un truc simple ' c'est une bonne idée
par exemple:
si le mot chaussée est écrit dans la plage de cellule A1:B2
' une plage est un ensemble de cellule qui contient au moins une cellule
alors la case C2 sera rempli par chaussée
début de programme :
Sub Repport_cellule2()
' essaie ça
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "chaussée" Then
Cells(2, 3) = "chaussée"
Else
Cells(2, 3) = ""
End If
Next
End Sub
merci bidouilleur_R
le problème c'est qu'il faut que toute la plage de cellule contient le mot chaussée pour que cela marche
A+
le problème c'est qu'il faut que toute la plage de cellule contient le mot chaussée pour que cela marche
A+
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
22 janv. 2009 à 10:28
22 janv. 2009 à 10:28
Oups! petite faute!
désolé
Sub Repport_cellule2()
' essaie ça
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "chaussée" Then
Cells(2, 3) = "chaussée"
exit for
Else
Cells(2, 3) = ""
End If
Next
End Sub
désolé
Sub Repport_cellule2()
' essaie ça
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "chaussée" Then
Cells(2, 3) = "chaussée"
exit for
Else
Cells(2, 3) = ""
End If
Next
End Sub
impec cela marche!
si tu as encore un peu de temps a me consacrer et l'envie
maintenant si je veux remplacer le mot "chaussée" par un nom de cellule
par exemple:
au lieu du mot "chaussée" j'ai le mot "fossé" et je veux que ce soit le mot fossé qui apparait en C2
ces deux mots appartiennent au nom de cellule "paramètres chaussée"
Option Explicit
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "ParamètresChaussées" Then
Cells(2, 3) = "chaussée"
Exit For
Else
Cells(2, 3) = ""
End If
Next
End Sub
cela ne marche pas ...
si tu as encore un peu de temps a me consacrer et l'envie
maintenant si je veux remplacer le mot "chaussée" par un nom de cellule
par exemple:
au lieu du mot "chaussée" j'ai le mot "fossé" et je veux que ce soit le mot fossé qui apparait en C2
ces deux mots appartiennent au nom de cellule "paramètres chaussée"
Option Explicit
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("A1:B2")
If C.Value = "ParamètresChaussées" Then
Cells(2, 3) = "chaussée"
Exit For
Else
Cells(2, 3) = ""
End If
Next
End Sub
cela ne marche pas ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
22 janv. 2009 à 11:47
22 janv. 2009 à 11:47
je ne comprends pas !!
maintenant si je veux remplacer le mot "chaussée" par un nom de cellule
je suppose que tu veux dire le contenu d'une cellule... car la cellule s'appelle A1 ou A2... au moins que
tu lui affectes un nom ce serait donc "paramètres chaussée"
par exemple:
au lieu du mot "chaussée" j'ai le mot "fossé" et je veux que ce soit le mot fossé qui apparait en C2
ces deux mots appartiennent au nom de cellule "paramètres chaussée"
explique mieux :
il y a une différence entre le contenu et le nom de la cellule
maintenant si je veux remplacer le mot "chaussée" par un nom de cellule
je suppose que tu veux dire le contenu d'une cellule... car la cellule s'appelle A1 ou A2... au moins que
tu lui affectes un nom ce serait donc "paramètres chaussée"
par exemple:
au lieu du mot "chaussée" j'ai le mot "fossé" et je veux que ce soit le mot fossé qui apparait en C2
ces deux mots appartiennent au nom de cellule "paramètres chaussée"
explique mieux :
il y a une différence entre le contenu et le nom de la cellule
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
22 janv. 2009 à 12:49
22 janv. 2009 à 12:49
si j'ai bien compris on parcours une liste "paramètresChaussée" qui se trouve sur une feuille XX
sur la feuille ou se passe le traitement ( il vaut mieux pour toi la sélectionner )
tu veux écrire que écrire le résultat "fossé" ou rien! en C2
ça donne ça
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("paramètresChaussées")
If C.Value = "fossé" Then
Cells(2, 3) = "fossé"
Exit For
Else
Cells(2, 3) = ""
End If
Next
End Sub
sur la feuille ou se passe le traitement ( il vaut mieux pour toi la sélectionner )
tu veux écrire que écrire le résultat "fossé" ou rien! en C2
ça donne ça
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("paramètresChaussées")
If C.Value = "fossé" Then
Cells(2, 3) = "fossé"
Exit For
Else
Cells(2, 3) = ""
End If
Next
End Sub
Nan cela ne marche pas
je te réexplique d'une autre façon
j'ai une catégorie qui est paramètres chaussées
fossée et chaussée appartiennent a cette catégorie
en revanche bordure n'appartient pas a cette catégorie
je veux donc que chaussée soit reporté en C1, fossé en C2 et bordure ne soit pas reporté
je te réexplique d'une autre façon
j'ai une catégorie qui est paramètres chaussées
fossée et chaussée appartiennent a cette catégorie
en revanche bordure n'appartient pas a cette catégorie
je veux donc que chaussée soit reporté en C1, fossé en C2 et bordure ne soit pas reporté
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
22 janv. 2009 à 15:14
22 janv. 2009 à 15:14
Désolé je suis peut-être rouillé!!!
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("paramètresChaussées") ' parcours la liste
Select Case C.Value
Case "fossé"
Cells(2, 3) = "fossé"
Case "chaussée"
Cells(1, 3) = "Chaussée"
Case Else
'on ne fait rien
End Select
Next
End Sub
Sub Repport_cellule2()
Dim C As Variant
For Each C In Range("paramètresChaussées") ' parcours la liste
Select Case C.Value
Case "fossé"
Cells(2, 3) = "fossé"
Case "chaussée"
Cells(1, 3) = "Chaussée"
Case Else
'on ne fait rien
End Select
Next
End Sub
euh je te repose une autre question:
j'aimerais maintenant faire:
si la cellule est rempli sauf un certain mot, le report se fait
si la cellule est vide ou contient un certain mot, le report ne se fait pas
ex:
A1 chaussée
A2 fossé
A3 bonjour
le mot en question est bonjour je veux que cela reporte mes cases sauf le mot bonjour sachant que le mot chaussée peut etre un autre mot
algorithme: si A1 est rempli alors B1 = case sauf si A1=bonjour
mon idée incomplete : if Cells(1,1) = .... then
Cells (2,1)= Cells(1,1)
Else if Cells(1,1)="bonjour"
j'aimerais maintenant faire:
si la cellule est rempli sauf un certain mot, le report se fait
si la cellule est vide ou contient un certain mot, le report ne se fait pas
ex:
A1 chaussée
A2 fossé
A3 bonjour
le mot en question est bonjour je veux que cela reporte mes cases sauf le mot bonjour sachant que le mot chaussée peut etre un autre mot
algorithme: si A1 est rempli alors B1 = case sauf si A1=bonjour
mon idée incomplete : if Cells(1,1) = .... then
Cells (2,1)= Cells(1,1)
Else if Cells(1,1)="bonjour"
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
23 janv. 2009 à 12:48
23 janv. 2009 à 12:48
Bonjour,
if Cells(1,1) = "un certains mot" then
Cells (2,1)= Cells(1,1) ' b1 prend la valeur de A1
Else
Cells(1,1)="bonjour" ' si A1 ="bonjour"
' je rajoute le code que je veux
end if
if Cells(1,1) = "un certains mot" then
Cells (2,1)= Cells(1,1) ' b1 prend la valeur de A1
Else
Cells(1,1)="bonjour" ' si A1 ="bonjour"
' je rajoute le code que je veux
end if