![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: novembre 2007
Messages: 3
|
Bonjour,
Je débute dans les macros et n'arrive vraiment pas à trouver de solution pour: tester une valeur "paiement" dans un tableur et indiquer si cette valeur est vraie une valeur "ok" sur la meme ligne et dans la colonne +1 qui suit la cellule testée. si possible le test doit se faire sur tout le tableau bien que ces valeurs "paiement" sont positionnés dans la meme colonne. J'en suis à: Sub Macro4() ' ' Macro4 Macro For Each cell In Range("AA:AA") Value = "paiment" cell $;$+1 value = "ok" Next cell End Sub Pour certains cela peut paraitre facile! mais avec mon petit niveau j'ai besoin de votre aide. Merci beaucoup |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
XLDnaute Accro
Date d'inscription: février 2005
Localisation: Lixing les Rouhling
Version Excel : Excel 2003 (PC)
Messages: 1 438
|
bonsoir jelmex
if cell.value = "paiement" then cell.offset(0,1) = "ok" devrait être bon pour ce que tu veux faire
__________________
@+ ertrand
|
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: septembre 2007
Localisation: BAGNÈRES DE BIGORRE
Version Excel : Excel 2007 (PC)
Messages: 699
|
bonsoir jelmex, bonsoir mutzik,
jelmex n'hésite pas à utiliser l'éditeur de macro, tu progresseras plus vite. Code:
Sub PaiementOK()
'initialisation de variables
Dim Derli As Long
Dim C As Range
' recherche de la dernière cellule de la colonne 1
Derli = Columns(1).Find("*", , , , , xlPrevious).Row
' boucle sur la plage A2:Ax
For Each C In Range("A2:A" & Derli)
' si la valeur de la cellule en minuscule est paiement
' comme ça tu ne te soucie pas des differentes casses possibles
' Paiement, PAIEMENT, paiement, PaIEmeNt, etc
' alors on inscrit "OK" sur la même ligne (1), la colonne de droite (2)
If LCase(C.Value) = "paiement" Then C(1, 2) = "OK"
'cellule suivante
Next C
'fin de procédure
End Sub
__________________
fred65200 |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: novembre 2007
Messages: 3
|
Bonjour et merci fred65200,
Cela fontionne à merveille.Tellement emballé que j'aurais encore voulu apporter une petite modif: If LCase(C.Value) = "*paiement*" Then C(1, 2) = "OK" Les astérisques pour selectionner une morceau de texte dans cette cellule, car il se peut qu'il y ait d'autres mots: par exemple "paiement par carte". MAis cela ne fonctionne pas est-ce un mauvais emploi ou une mauvaise syntaxe ?? Vraiment merci |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| conditionner la valeur d'une cellule par rapport à la valeur d'une autre | olivet | Forum Excel | 4 | 13/11/2007 14h51 |
| Recherche et renvoi d'une partie de la valeur d'une case | Luc Lucasse | Forum Excel | 27 | 29/10/2006 11h30 |
| addition de valeur de colonne en fonction d'une autre colonne ... | bigblue06 | Forum Excel | 2 | 10/10/2006 02h17 |
| Renvoi d'une valeur | Ynos | Forum Excel | 2 | 27/04/2006 09h08 |
| Renvoi de la derniére valeur d'une colonne en VBA | Zman | Forum Excel Downloads - Archives | 2 | 19/01/2005 07h11 |