Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Comment exporter les cellules nommées d'un classeur" A" dans classeur "B"
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 !
Re : Comment exporter les cellules nommées d'un classeur" A" dans classeur "B"
Salut Biroulig,
voici une propositon. Je t'ai monté 2 macros. La première te permets de lister toutes les cellules nommées tandis que la 2e te permets de les copier ailleurs. À adapter.
VB:
Option Explicit
Sub Lister_les_cellules_nommees()
Dim Nom As Name
Dim DL As Long
Dim Colonne_Depot As Integer
Colonne_Depot = 1
For Each Nom In ThisWorkbook.Names
DL = Cells(65536, Colonne_Depot).End(xlUp).Row
If Cells(DL, Colonne_Depot).Value = "" Then
Cells(DL, Colonne_Depot).Value = Nom.Name
Else
Cells(DL + 1, Colonne_Depot).Value = Nom.Name
End If
Next
End Sub
VB:
Sub Copier_les_cellules_nommees()
Dim Nom As Name
Dim Mon_Range As Range
Dim DL As Long
Dim Colonne_Depot As Integer
Colonne_Depot = 1
For Each Nom In ThisWorkbook.Names
On Error Resume Next
Set Mon_Range = Nom.RefersToRange
DL = Cells(65536, Colonne_Depot).End(xlUp).Row
If Cells(DL, Colonne_Depot).Value = "" Then
Mon_Range.Copy Cells(DL, Colonne_Depot)
Else
Mon_Range.Copy Cells(DL + 1, Colonne_Depot)
End If
Next
End Sub
Sans fichier exemple, difficile pour moi de te donner mieux.
Re : Comment exporter les cellules nommées d'un classeur" A" dans classeur "B"
Bonjour le fil, bonjour le forum,
Si le nom des onglets des deux classeurs est identique, la macro ci-dessous récupère les plages nommées du classeur Source et les place au même endroit dans le classeur Cible :
Code:
Sub Macro1()
Dim cs As Workbook 'déclare la variable cs (Classeur Source)
Dim cc As Workbook 'déclare la variable cc (Classeur Cible)
Dim pn As Name 'déclare la variable pn (Plage Nommée)
Dim o As String 'déclare la variable o (onglet)
Dim dest As Range 'déclare la variable dest (cellule de DESTination)
Set cs = ThisWorkbook 'définit le classeur source
Set cc = Workbooks("Classeur_Cible.xls") 'définit le classeur source (à adapter à ton cas)
For Each pn In cs.Names 'boucle sur toutes les plages nommées du classeur source
With Range(pn) 'prend en compte la plage nommée
o = Range(pn).Worksheet.Name 'définit l'onglet de la plage nommée
Set dest = cc.Sheets(o).Range(pn) 'définit la cellule de destination
.Copy dest 'copie la plage nommée et la colle dans la cellule de destination
End With 'fin de la prise en compte de la plage nommée
Next pn 'prochaine plage nommé de la boucle
End Sub
- 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