Par macro, je désire mettre des formules dans diverses cellules.
Avec le code suivant :
CellulTraitée.FormulaR1C1 = _
"=""PAUSE de "" & DemiJournéeDécalage" & TypeEtab & "_" & Col -
2 & " & "" MIN ("" & DemiJournéeDécalage" & TypeEtab & "_" & Col - 2
& " & "" effective sur l'aire de compétition)"""
j'obtiens la formule suivante:
="PAUSE de " & DemiJournéeDécalage2_7 & " MIN (" &
DemiJournéeDécalage2_7 & " effective sur l'aire de compétition)"
Cependant, j'aimerais incorporer dans cette formule une soustraction
pour obtenir la formule ci-dessous
="PAUSE de " & DemiJournéeDécalage2_7 & " MIN (" &
DemiJournéeDécalage2_7 - DemiJournéeDécalage2_9 & " effective sur
l'aire de compétition)"
En bidouillant tant bien que mal j'écris cela , mais ça plante
J'imaginne qu'il s'agit d'un problème de guillemet (") encore que...
voici l'objet du délit et de mon courroux.
CellulTraitée.FormulaR1C1 = _
"=""PAUSE de "" & DemiJournéeDécalage" & TypeEtab & "_" & Col -
2 & " & "" MIN ("" & DemiJournéeDécalage" & TypeEtab & "_" & Col - 2
& " - "" & DemiJournéeDécalage" & TypeEtab & "_" & Col & " & ""
effective sur l'aire de compétition)"""
PS : les formule font référence Í des cellules nommées existantes.
J'aimerais conserver cette soustraction qui permettrait d'automatiser
le calcul s'il advenait que l'on change ces constantes.
D'avance merci en espérant avoir bien expliqué mon problème.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ " min effective sur l'aire de compétition" MichD
Bonjour,
Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la
cellule mais seulement une formule, tu devras adapter au besoin.
Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & "
Min et " & _
Range("DemiJournéeDécalage2_7") -
Range("DemiJournéeDécalage2_9") & _
" min effective sur l'aire de compétition"
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ " min effective sur l'aire de compétition" MichD
Jc
MichD a formulé la demande :
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ " min effective sur l'aire de compétition" MichD
Comme toujours merci MichD La phrase qui doit apparaÍ®tre est du style : Pause de 30 MIN (5 min effectives sur l'aire de compétition. La formule que tu proposes est logique. Cependant comme cette formule doit être écrite dans 6 onglets (je n'avais pas mis toutes les données sur le tapis, au jeu faut en garder sous le pied...) il y a 4 variantes. Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux chiffres en final. C'est l'incorporation de ces données variables qui me pose problème. Si je ne trouve pas une formule unique qui s'adapte Í tous les cas, j'ai la possibilité d'utiliser un select case et de mettre en "dur", comme tu le propose, ces variables. Mais c'est moins élégant, mais comme ça devrait marcher l'élégance... Merci -- ______________________________________________ Jc
MichD a formulé la demande :
Bonjour,
Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la
cellule mais seulement une formule, tu devras adapter au besoin.
Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min
et " & _
Range("DemiJournéeDécalage2_7") -
Range("DemiJournéeDécalage2_9") & _
" min effective sur l'aire de compétition"
MichD
Comme toujours merci MichD
La phrase qui doit apparaͮtre est du style :
Pause de 30 MIN (5 min effectives sur l'aire de compétition.
La formule que tu proposes est logique.
Cependant comme cette formule doit être écrite dans 6 onglets (je
n'avais pas mis toutes les données sur le tapis, au jeu faut en garder
sous le pied...) il y a 4 variantes.
Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux
chiffres en final.
C'est l'incorporation de ces données variables qui me pose problème.
Si je ne trouve pas une formule unique qui s'adapte Í tous les cas,
j'ai la possibilité d'utiliser un select case et de mettre en "dur",
comme tu le propose, ces variables.
Mais c'est moins élégant, mais comme ça devrait marcher l'élégance...
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ " min effective sur l'aire de compétition" MichD
Comme toujours merci MichD La phrase qui doit apparaÍ®tre est du style : Pause de 30 MIN (5 min effectives sur l'aire de compétition. La formule que tu proposes est logique. Cependant comme cette formule doit être écrite dans 6 onglets (je n'avais pas mis toutes les données sur le tapis, au jeu faut en garder sous le pied...) il y a 4 variantes. Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux chiffres en final. C'est l'incorporation de ces données variables qui me pose problème. Si je ne trouve pas une formule unique qui s'adapte Í tous les cas, j'ai la possibilité d'utiliser un select case et de mettre en "dur", comme tu le propose, ces variables. Mais c'est moins élégant, mais comme ça devrait marcher l'élégance... Merci -- ______________________________________________ Jc
MichD
Le 13/05/22 Í 12:49, Jc a écrit :
MichD a formulé la demande :
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Â Â Â Â Â Â Â Â Â Â Â Â Â Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ Â Â Â Â Â Â Â Â Â Â Â Â Â " min effective sur l'aire de compétition" MichD
Comme toujours merci MichD La phrase qui doit apparaÍ®tre est du style : Pause de 30 MIN (5 min effectives sur l'aire de compétition. La formule que tu proposes est logique. Cependant comme cette formule doit être écrite dans 6 onglets (je n'avais pas mis toutes les données sur le tapis, au jeu faut en garder sous le pied...) il y a 4 variantes. Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux chiffres en final. C'est l'incorporation de ces données variables qui me pose problème. Si je ne trouve pas une formule unique qui s'adapte Í tous les cas, j'ai la possibilité d'utiliser un select case et de mettre en "dur", comme tu le propose, ces variables. Mais c'est moins élégant, mais comme ça devrait marcher l'élégance... Merci
Pour avoir une formule unique, les plages nommées doivent avoir le même nom dans chacune des feuilles. Si c'est le cas, la formule va s'inscrire dans la feuille active avec les données (variables) de cette feuille. '------------------------------- Sub test() Dim X, Y With ActiveSheet '2 variables x = .Range("DemiJournéeDécalage2_7") y = .Range("DemiJournéeDécalage2_9") .Range("A1").Formula = "PAUSE de " & x & " Min (" & _ x - y & " min effective sur l'aire de compétition.)" End With End Sub '------------------------------- MichD
Le 13/05/22 Í 12:49, Jc a écrit :
MichD a formulé la demande :
Bonjour,
Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la
cellule mais seulement une formule, tu devras adapter au besoin.
Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") &
" Min et " & _
             Range("DemiJournéeDécalage2_7") -
Range("DemiJournéeDécalage2_9") & _
             " min effective sur l'aire de compétition"
MichD
Comme toujours merci MichD
La phrase qui doit apparaͮtre est du style :
Pause de 30 MIN (5 min effectives sur l'aire de compétition.
La formule que tu proposes est logique.
Cependant comme cette formule doit être écrite dans 6 onglets (je
n'avais pas mis toutes les données sur le tapis, au jeu faut en garder
sous le pied...) il y a 4 variantes.
Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux
chiffres en final.
C'est l'incorporation de ces données variables qui me pose problème.
Si je ne trouve pas une formule unique qui s'adapte Í tous les cas, j'ai
la possibilité d'utiliser un select case et de mettre en "dur", comme tu
le propose, ces variables.
Mais c'est moins élégant, mais comme ça devrait marcher l'élégance...
Merci
Pour avoir une formule unique, les plages nommées doivent avoir le même
nom dans chacune des feuilles. Si c'est le cas, la formule va s'inscrire
dans la feuille active avec les données (variables) de cette feuille.
'-------------------------------
Sub test()
Dim X, Y
With ActiveSheet
'2 variables
x = .Range("DemiJournéeDécalage2_7")
y = .Range("DemiJournéeDécalage2_9")
.Range("A1").Formula = "PAUSE de " & x & " Min (" & _
x - y & " min effective sur l'aire de compétition.)"
End With
Bonjour, Comme tu ne donnes pas la phrase que tu aimerais voir afficher dans la cellule mais seulement une formule, tu devras adapter au besoin. Range("A1").Formula = "PAUSE de " & Range("DemiJournéeDécalage2_7") & " Min et " & _ Â Â Â Â Â Â Â Â Â Â Â Â Â Range("DemiJournéeDécalage2_7") - Range("DemiJournéeDécalage2_9") & _ Â Â Â Â Â Â Â Â Â Â Â Â Â " min effective sur l'aire de compétition" MichD
Comme toujours merci MichD La phrase qui doit apparaÍ®tre est du style : Pause de 30 MIN (5 min effectives sur l'aire de compétition. La formule que tu proposes est logique. Cependant comme cette formule doit être écrite dans 6 onglets (je n'avais pas mis toutes les données sur le tapis, au jeu faut en garder sous le pied...) il y a 4 variantes. Ce qui explique les noms (DemiJournéeDécalage2_7...) avec ces deux chiffres en final. C'est l'incorporation de ces données variables qui me pose problème. Si je ne trouve pas une formule unique qui s'adapte Í tous les cas, j'ai la possibilité d'utiliser un select case et de mettre en "dur", comme tu le propose, ces variables. Mais c'est moins élégant, mais comme ça devrait marcher l'élégance... Merci
Pour avoir une formule unique, les plages nommées doivent avoir le même nom dans chacune des feuilles. Si c'est le cas, la formule va s'inscrire dans la feuille active avec les données (variables) de cette feuille. '------------------------------- Sub test() Dim X, Y With ActiveSheet '2 variables x = .Range("DemiJournéeDécalage2_7") y = .Range("DemiJournéeDécalage2_9") .Range("A1").Formula = "PAUSE de " & x & " Min (" & _ x - y & " min effective sur l'aire de compétition.)" End With End Sub '------------------------------- MichD