Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Concatener 2 cellules à partir d'une autre feuille en VBA.

  • Initiateur de la discussion Initiateur de la discussion maystreet
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

maystreet

XLDnaute Nouveau
Bonjour,
comme le titre l'indique je cherche à concatener deux cellules d'un onglet 2 sur un onglet 1.

Rien de dur en soi.
Mais voila le probleme.
Mon onglet 2 change de nom tous les jours.
L'onglet pour le 11 mai 2009 s'appelle 11052009détaillé, pour le 16 mai, il s'appelle 16052009détaillé....

J'ai mis ici les bouts de codes qui pourraient servir à mieux comprendre, en gros, le 1er code marche lorsque le jour est fixé dès le départ :
Code:
ActiveCell.FormulaR1C1 = "=Concatenate('11052009détaillé'!RC[2],'11052009détaillé'!RC[1])"
alors que le second ne marche pas.
Code:
Aujourdhui = Format(Date, "yyyymmdd")


ActiveCell.FormulaR1C1 = "=Concatenate(Aujourdhui  & 'détaillé'!RC[2],Aujourdhui  & 'détaillé'!RC[1])"

Voila , le problème est que je n'arrive pas à trouver la bonne écriture pour intégrer la variable Aujourdhui.

Merci pour votre aide.
Si ce n'est pas clair ou si vous avez besoin de plus de précision, n'hésiter pas.
Merci
 
Re : Concatener 2 cellules à partir d'une autre feuille en VBA.

Bonjour

modifies ainsi

Code:
ActiveCell.FormulaR1C1 = "=Concatenate('"&Aujourdhui  & "détaillé'!RC[2],'"&Aujourdhui  & "détaillé'!RC[1])"
 
Re : Concatener 2 cellules à partir d'une autre feuille en VBA.

Bonjour


Essaie ainsi

Code:
Aujourdhui = Format(Date, "yyyymmdd")
    ActiveCell.FormulaR1C1 = _
        "=CONCATENATE(" & Aujourdhui & ",détaillé!RC[2]," & Aujourdhui & ",détaillé!RC[1])"

Houps: désolé pour la collise

EDITION: une version sans passer par une formule
Code:
Dim s As Worksheet, r As Range, rr As Range, formule$
Set s = Sheets("détaillé")
a = Format(Date, "yyyymmdd")
Set r = ActiveCell
Set rr = r.Offset(, 1)
formule = a & s.Cells(r.Row, r.Column) & a & s.Cells(rr.Row, rr.Column)
r = Chr(39) & formule
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…