Ajouter du texte dans une cellule avec formule

Résolu/Fermé
TonyLucky - 18 nov. 2021 à 11:37
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 - 21 nov. 2021 à 11:13
Bonjour à tous,

Je me heurte à un petit souci de présentation. J'importe une formule dans une cellule. Jusque là, tout va bien.
ActiveCell.Formula = "=" & Range(ValeurCherche1).Offset(-6, 0).Address

Par contre, si je souhaite ajouter du texte, en suivant pourtant les exemples trouvés sur le net, j'ai l'erreur 1004, erreur définie par l'application ou par l'objet.
ActiveCell.Formula = "=""Réf "" & Range(ValeurCherche1).Offset(-6, 0).Address"

Je ne vois pas l'erreur que j'ai pu commettre et vous remercie par avance pour votre aide


Configuration: Windows / Firefox 94.0
A voir également:

5 réponses

Bonjour,
Après de nombreuses recherches et tests, j'ai fini par trouver la solution, en passant par R1C1 plutôt que range ou cells, avec lesquels je n'arrivais à rien.
ActiveCell.Formula = "=""(Réf. "" & R" & RepRow & "C" & RepCol & " & "")"""

Comme toujours, c'est tout simple quand on sait, même si la gestion des guillemets n'est pas évidente.

Comme je n'ai pas la possibilité de mettre cette question en "résolu", merci d'avoir la gentillesse de le faire.
1
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 1 568
21 nov. 2021 à 11:13
Je pense qu'il manquait surtout un
&
dans la formule.
-1
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 Ambassadeur 1 568
18 nov. 2021 à 12:10
bonjour,
qu'essaies-tu d'obtenir en ajoutant du texte à une formule?
tu nous montres un code qui ne fonctionne pas, sans nous expliquer le résultat que tu cherches à atteindre.
0
Bonjour,
Merci d'avoir lu ma question.
Je cherche simplement à ajouter du texte dans une cellule qui affiche le contenu variable (d'où besoin d'une formule) d'une cellule source , afin que cela soit plus "lisible". Au lieu d'avoir, par exemple, 2024, je veux avoir Réf. 2024.
Le code qui ne fonctionne pas semble pourtant respecter ce que j'ai trouvé comme exemple. Je suis en 64bits. Je ne sais pas si cela a une incidence.
0
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 1 568
18 nov. 2021 à 12:58
Avant de faire cela en VBA, commence par écrire et tester la formule qui te donne le résultat attendu, directement dans Excel.
0
jordane45 Messages postés 38426 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 février 2025 4 734
18 nov. 2021 à 13:04
Tu as un souci de concaténation et de guillemets...
Et c'est un truc du genre :
ActiveCell.Formula = "=" & """Réf """ & Range(ValeurCherche1).Offset(-6, 0).Address

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour à tous les deux et merci pour vos réponses.
Cependant, yb, désolé de le dire, mais vous n'apportez pas grand chose. Manifestement, vous ne connaissez pas cette fonction, donc, dans ce cas, le silence est d'or.
Jordane, vous avez raison, c'est effectivement un problème de guillemets. J'ai testé votre solution mais elle ne fonctionne malheureusement pas. Je pense que mon erreur vient des guillemets avec l'intégration de valeurs variables. Si je ne mets pas de variable, le texte s'ajoute à la formule sans problème. L'enregistreur de macro m'avait d'ailleurs donné la solution.
Donc, ma question est : comment intégrer les données variables ?
0
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 1 568
Modifié le 19 nov. 2021 à 10:42
Travaille d'abord dans Excel, sans VBA, pour obtenir la formule que tu veux obtenir, sans partie variable. Cela t'aidera à comprendre comment ajouter du texte dans une formule.

Ce n'est pas la partie variable qui pose problème. Le problème principal, c'est que tu n'as pas compris comment ajouter du texte dans une formule.

Tu as d'abord un soucis avec la syntaxe des formules, ensuite un soucis avec la syntaxe VBA.
0
yg_be Messages postés 23471 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 février 2025 1 568
19 nov. 2021 à 10:22
tu peux aussi afficher la formule, afin de t'aider à comprendre ce qui se passe:
msgbox "=" & """Réf """ & Range(ValeurCherche1).Offset(-6, 0).Address
0