Bonjour à tous et merci pour l'aide que vous avez pu m'apporter précédement en tant que lecteur attentif de certaine de vos discussions.
Etant un garçon aimant bien passer sous les radars (on ne commence pas avec les jeux de mots hein...), je n'avais, j'usqu'à présent, pas eu le besoin de m'inscrire pour poster. Mais comme chacun le sait, "le besoin est la mère de l'invention", dans ce cas je dirais plutôt le père de ma démarche...
(Promis je ne ferait pas une tartine à chaque fois, mais je me devais de marquer mon premier post et de saluer tout le monde. Ceci étant fait.)
J'ai donc un VRAI (lol) problème :
Je souhaiterai faire passer toutes les valeurs d'une plage de données (composées de formules très simples : additions) de l'état de valeurs absolues à valeurs relatives et réciproquement.
Bien sûr avant de demander j'ai cherché... Et j'ai trouvé un gentil contributeur sur un autre site ayant déjà répondu à cette question via un code VBA sur ce site : Mettre des $ automatiquement à toutes les formules? : Forum Excel
Le fait est que cela fonctionne très bien.
Là ou le problème apparait pour moi est que ce code n'est pas fait pour être appliqué à des formules contenant des références externes. Dans mon cas à d'autre onglets du même classeur.
Je crois que Excel est perturbé par les réfèrences du style "Feuil1!" lors de l'execution.
Et comme je suis un peintre en programmation VBA et que le temps me manque pour en apprendre toute les subtilités d'ici deux semaines. Je sollicite votre aide pour transformer ce code :
Sub Relatif_To_Absolu_Ou_Vice_Versa()
Dim c As Range
Dim LaFormule As String
For Each c In Selection
LaFormule = c.Formula
If LaFormule Like "*$*" Then
c.Value = Application.ConvertFormula _
(Formula:=LaFormule, fromReferenceStyle:=xlA1, _
toReferenceStyle:=xlA1, ToAbsolute:=xlRelative)
Else
c.Value = Application.ConvertFormula _
(Formula:=LaFormule, fromReferenceStyle:=xlA1, _
toReferenceStyle:=xlA1, ToAbsolute:=xlAbsolute)
End If
Next c
End Sub
Ou m'en proposer un autre.
Merci d'avance pour votre aide.
Etant un garçon aimant bien passer sous les radars (on ne commence pas avec les jeux de mots hein...), je n'avais, j'usqu'à présent, pas eu le besoin de m'inscrire pour poster. Mais comme chacun le sait, "le besoin est la mère de l'invention", dans ce cas je dirais plutôt le père de ma démarche...
(Promis je ne ferait pas une tartine à chaque fois, mais je me devais de marquer mon premier post et de saluer tout le monde. Ceci étant fait.)
J'ai donc un VRAI (lol) problème :
Je souhaiterai faire passer toutes les valeurs d'une plage de données (composées de formules très simples : additions) de l'état de valeurs absolues à valeurs relatives et réciproquement.
Bien sûr avant de demander j'ai cherché... Et j'ai trouvé un gentil contributeur sur un autre site ayant déjà répondu à cette question via un code VBA sur ce site : Mettre des $ automatiquement à toutes les formules? : Forum Excel
Le fait est que cela fonctionne très bien.
Là ou le problème apparait pour moi est que ce code n'est pas fait pour être appliqué à des formules contenant des références externes. Dans mon cas à d'autre onglets du même classeur.
Je crois que Excel est perturbé par les réfèrences du style "Feuil1!" lors de l'execution.
Et comme je suis un peintre en programmation VBA et que le temps me manque pour en apprendre toute les subtilités d'ici deux semaines. Je sollicite votre aide pour transformer ce code :
Sub Relatif_To_Absolu_Ou_Vice_Versa()
Dim c As Range
Dim LaFormule As String
For Each c In Selection
LaFormule = c.Formula
If LaFormule Like "*$*" Then
c.Value = Application.ConvertFormula _
(Formula:=LaFormule, fromReferenceStyle:=xlA1, _
toReferenceStyle:=xlA1, ToAbsolute:=xlRelative)
Else
c.Value = Application.ConvertFormula _
(Formula:=LaFormule, fromReferenceStyle:=xlA1, _
toReferenceStyle:=xlA1, ToAbsolute:=xlAbsolute)
End If
Next c
End Sub
Ou m'en proposer un autre.
Merci d'avance pour votre aide.