Copier une plage de cellule nommée

Flows

XLDnaute Nouveau
Bonjour,

Je travaille sur un classeur Excel où je dois créer une bibliothèque de prix. Jusque là, tout va bien. Je dois ensuite utiliser les valeurs de cette bibliothèque dans une autre feuille. Mon idée est :

- dans la colonne B de la feuille "LOT1 GO", je dois pouvoir rentrer dans n'importe quelle cellule, les codes de la bibliothèque pour que les articles situés dans la feuille "Débours" soit renvoyés sur la feuille "LOT1 GO".

Si quelqu'un a une méthode en utilisant des formules ou même du VBA (malgré que je n'y connaisse rien), n'hésitez pas à me venir en aide.

Je vous mets le tableur en pièce jointe, ce sera sûrement plus clair.

Je vous remercie d'avance.


Flows
 

Pièces jointes

  • Bible.xlsx
    32.2 KB · Affichages: 125

Flows

XLDnaute Nouveau
Re : Copier une plage de cellule nommée

Bonjour Martial,

Merci pour cette réponse plus que rapide!

Merci aussi pour cette solution qui est bien trouvée car je peux agrandir la liste autant que je veux. Je souhaitais quand même avoir quelques précisions :

- les noms des cellules intégrées dans la liste déroulante peuvent-ils être placés dans une autre feuille ?
- la liste déroulante est-elle obligatoire (juste pour une question d'esthétique) ?

Si je regarde ton code, tu commences par dire que tu vas chercher une plage de cellules comme si c'était une cellule normale mais tu précises quand même que les dimensions sont variables. Ensuite tu précises que la valeur à prendre en compte est situé en colonne 2. Après je suppose que tu commande comment définir les dimensions de la plage.

J'essaie simplement de comprendre pour qu'à l'avenir j'essaie de me débrouiller.

Merci d'avance pour ces précisions supplémentaires.



Flows
 

Yaloo

XLDnaute Barbatruc
Re : Copier une plage de cellule nommée

Bonjour Flows,

- les noms des cellules intégrées dans la liste déroulante peuvent-ils être placés dans une autre feuille ?

Oui, sans aucun problème, il faut juste nommée la zone puis dans la validation des données mettre ="le_nom_de_ta_zone"

- la liste déroulante est-elle obligatoire (juste pour une question d'esthétique) ?

Non, tu peux très bien rentrer tes références directement, mais j'ai essayé avec 2 références et je n'ai pas dû les saisir exactement comme tu l'avais fait dans ta feuille "Débours", donc j'ai mis la liste déroulante.

Voici la macro avec des lignes explicatives :

VB:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim k&, i&, j&, m
'Si plusieurs cellules sélectionnées alors on sort
If Target.Count > 1 Then Exit Sub
'Si la cellule sélectionnée est dans la colonne 2 (B) etau-delà de la ligne 11 (non incluse, donc 12)
If Target.Column = 2 And Target.Row > 11 Then
  'Si la cellule de droite n'est pas vide alors on sort
  If Target.Offset(, 1) <> "" Then Exit Sub
  'Avec la feuille 2 (Débours)
  With Feuil2
    On Error GoTo Fin
    'On cherche la valeur de la cellule sélectionnée dans la colonne 1 (A) de la feuille 2
    k = Application.Match(Target, .Columns(1), 0)
    'm va prendre les valeurs de la zone proche de la cellule trouvée de la feuille 2
    m = .Cells(k, 1).CurrentRegion.Value
    'Copie de ces valeurs dans à droite de la cellule sélectionnée
    Target.Offset(, 1).Resize(UBound(m, 1), UBound(m, 2)) = m
  End With
End If
Fin:
End Sub

A+

Martial
 

Flows

XLDnaute Nouveau
Re : Copier une plage de cellule nommée

Bonjour,

Je reviens vers vous car j'ai un peu changé mon projet et du coup je suis (re)bloqué. A la base je cherchais un moyen pour que les valeurs qui étaient en colonne A de la feuille 1 appellent des plages de cellules en feuille3. Je te remercie encore Yaloo pour ta solution qui marche au poil !

Aujourd'hui, en feuille 1 j'utilise des formules de type "RechercheV" ce qui me convient. Ce que je souhaite, c'est copier mes valeurs de la colonne A en feuille 1 pour les coller en feuille2 pour que la macro de Yaloo appellent les plages de cellules situées toujours en feuille 3.

Le problème c'est que ces plages s'imbriquent les une dans les autres. Il me semble qu'il faudrait que j'applique une boucle qui chercherait les cellules non vides, insérerait x lignes et continue à chercher les cellules non vides avant d'appliquer la macro de Yaloo.

J'espère être clair dans mes explications :confused:, je vous met à disposition mon fichier qui sera sûrement plus parlant.

Merci d'avance à ceux qui pourront m'aiguiller.



Flows
 

Pièces jointes

  • Fichier Flows.xlsm
    32.5 KB · Affichages: 54
  • Fichier Flows.xlsm
    32.5 KB · Affichages: 70
  • Fichier Flows.xlsm
    32.5 KB · Affichages: 63

Yaloo

XLDnaute Barbatruc
Re : Copier une plage de cellule nommée

Re,

Voici ton fichier modifié (avec un bouton), avec ce que j'ai compris, ça devrait le faire :eek:

A+

Martial
 

Pièces jointes

  • Fichier Flows.xlsm
    39.6 KB · Affichages: 85
  • Fichier Flows.xlsm
    39.6 KB · Affichages: 100
  • Fichier Flows.xlsm
    39.6 KB · Affichages: 120

Flows

XLDnaute Nouveau
Re : Copier une plage de cellule nommée

Bonsoir Yaloo,

Désolé de répondre aussi tard... Ta solution est super :D c'est exactement ce que je voulais !! Pour le bouton ça ne me gêne pas du tout j'avais l'intention d'en mettre pour gérer mes impressions.

Je te remercie encore une fois de venir à mon secours :)

@+ sur le forum !



Flows
 

Discussions similaires

Statistiques des forums

Discussions
312 922
Messages
2 093 644
Membres
105 775
dernier inscrit
assen