Mettre une variable dans le SI d'un IF
Spart1at
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous,
J'essaye actuellement de construire un tableau à élimination. Je bloque sur un point de la formule suivante:
(ci-dessous, j'essaye de mettre dans la cellule choisie la fonction SI d'Excel (à ne pas confondre avec la fonction IF de VBA)
ActiveCell.FormulaR1C1 = _ "=IF(R[-3]C[-2]="""","""",IF(R[-3]C[-2]=""V"",R[-3]C[-4],R[3]C[-4]))"
J'aimerai remplacer les nombres en gras par une variable (appelons là X) parce que cette formule fait partie d'un IF qui se répète.
J'essaye actuellement de construire un tableau à élimination. Je bloque sur un point de la formule suivante:
(ci-dessous, j'essaye de mettre dans la cellule choisie la fonction SI d'Excel (à ne pas confondre avec la fonction IF de VBA)
ActiveCell.FormulaR1C1 = _ "=IF(R[-3]C[-2]="""","""",IF(R[-3]C[-2]=""V"",R[-3]C[-4],R[3]C[-4]))"
J'aimerai remplacer les nombres en gras par une variable (appelons là X) parce que cette formule fait partie d'un IF qui se répète.
Configuration: Windows / Chrome 97.0.4692.71
A voir également:
- Mettre une variable dans le SI d'un IF
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- If out - Forum Matériel & Système
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Le mot secret ne s'affiche pas, comment pourrais-je faire? ✓ - Forum Python
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « clients » est-il le nom ? de quoi « date » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Webmastering
11 réponses
Bonjour
Pour tes prochains posts, merci d’utiliser la coloration syntaxique (voir ce tuto https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code )
Ce qui donne
Je te conseille d’aller lire cet article sur la manipulation des strings, et notamment le chapitre sur la concaténation https://www.commentcamarche.net/faq/48440-vba-string-assigner-comparer-concatener
Pour tes prochains posts, merci d’utiliser la coloration syntaxique (voir ce tuto https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code )
Ce qui donne
ActiveCell.FormulaR1C1 = _ "=IF(R[-3]C[-2]="""","""",IF(R[-3]C[-2]=""V"",R[-3]C[-4],R[3]C[-4]))"
Je te conseille d’aller lire cet article sur la manipulation des strings, et notamment le chapitre sur la concaténation https://www.commentcamarche.net/faq/48440-vba-string-assigner-comparer-concatener
Bonjour,
Merci pour l'info.
Je viens de regarder le chapitre sur la concaténation mais je ne vois pas le rapport et je ne vois pas comment peut résoudre mon problème. J'ai essayé tout de même de concaténer des variables mais cela ne donne rien
Merci d'avance
Merci pour l'info.
Je viens de regarder le chapitre sur la concaténation mais je ne vois pas le rapport et je ne vois pas comment peut résoudre mon problème. J'ai essayé tout de même de concaténer des variables mais cela ne donne rien
Merci d'avance
J'ai utilisé ce code. Je vois bien qu'il est nul mais je ne trouve pas la solution
Dim A As String
A = r
Dim B As Long
B = [-3]
ActiveCell.FormulaR1C1 = _
"=IF(A&B&C[-2]="""","""",IF(R[-3]C[-2]=""V"",R[-3]C[-4],R[3]C[-4]))"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C’est là où la couleur est importante.
Dans le tuto que je t’ai conseillé, A et B apparaissent en noir, ce sont des variables et le & apparaît en fushia c’est un opérateur.
"A&B&C"apparaît en rouge, donc c’est « à l’intérieur » de la string. C’est du texte brut, pas de la concaténation.
Dans le tuto que je t’ai conseillé, A et B apparaissent en noir, ce sont des variables et le & apparaît en fushia c’est un opérateur.
Oui ça ne me surprend pas, il considère tout comme un texte à cause des guillemets, mais si je les supprime, la fonction ne marche pas
Bon
Je te remets ici le code exemple
Il y a bien des guillemets, donc il n’est pas question de les enlever.
Vois tu les différences avec ce que tu as codé?
Je te remets ici le code exemple
Sub Concatener()
Dim A, B As String
A = "Hello"
B = "world"
Debug.Print A & " " & B 'retourne : Hello world
'Si vous êtes surs que A et B sont des Strings :
Debug.Print A + " " + B 'retourne : Hello world
End Sub
Il y a bien des guillemets, donc il n’est pas question de les enlever.
Vois tu les différences avec ce que tu as codé?
Je sais exactement où tu butes, mais j’essayais de te le faire découvrir par toi-même.
Généralement on retient généralement mieux ce que l’on expérimente que ce qu’on nous donne tout cuit.
Mais puisque tu sembles ne pas y arriver, voilà
Généralement on retient généralement mieux ce que l’on expérimente que ce qu’on nous donne tout cuit.
Mais puisque tu sembles ne pas y arriver, voilà
Dim X as Integer
X = -3
ActiveCell.FormulaR1C1 = _
"=IF(R[" & X & "]C[-2]="""","""",IF(R[-3]C[-2]=""V"",R[-3]C[-4]"
J'ai finalement trouvé la solution, merci tout de même pour l'aide.
Donner une réponse ne signifie pas nécessairement que la personne qui l'a reçoit ne vas pas la regarder.
Donner une réponse ne signifie pas nécessairement que la personne qui l'a reçoit ne vas pas la regarder.
Je n’ai pas dit que la réponse n’est pas lue, mais que lu n’est pas forcément appris.
L’apprentissage passe par plusieurs biais et l’un des principaux c’est l’expérimentation.
La prochaine fois que tu auras besoin de concaténer, il y a plus de chance que tu saches le faire de tête si tu as fini par trouver de toi-même que si tu avais copié collé ma solution.
L’apprentissage passe par plusieurs biais et l’un des principaux c’est l’expérimentation.
La prochaine fois que tu auras besoin de concaténer, il y a plus de chance que tu saches le faire de tête si tu as fini par trouver de toi-même que si tu avais copié collé ma solution.