XL 2010 glisser - déposer (drag and drop) en VBA

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 !

nounbxl76

XLDnaute Occasionnel
Bonsoir à tous,

Je vous sollicite car je n'ai (malheureusement) toujours pas les compétences requises pour venir à bout d'une problématique donc je m'en remets aux pros 🙂

Sur le fichier joint, j'ai un onglet "data" et un onglet "suivi". Dans l'onglet "suivi", je récupère des infos depuis l'onglet "data" via des formules de type rechercheV ou index ou autre pour exploitation.

J'aimerais que lorsque que je clique sur le bouton "mise à jour", il s'opère un drag and drop (glisser - déposer) de type "recopier les valeurs sans la mise en forme" depuis la colonne E jusqu'à ce que le nombre de colonnes entre l'onglet "data" et l'onglet "suivi" soit identique. J'ai fait quelques tentatives avec une boucle de type "do while" "il n'y a plus de colonne" (LOL !) mais je suis vraiment trop nul !

Merci par avance à ceux qui se pencheront sur mon problème.

Bonne soirée
 

Pièces jointes

Bonssoir
essaie ce code
Sub deb()
With Sheets("data")
n = 1
While .Cells(2, n) <> ""
n = n + 1
Wend
nbcol = n - 4 - 1
End With
With Sheets("Suivi")
n = 1
While .Cells(6 + n, 5) <> ""
For k = 6 To 5 + nbcol
.Cells(6 + n, k) = .Cells(6 + n, 5).Value
Next
n = n + 1

Wend
End With

End Sub
 
Bonjour,

Merci pour ce retour !
la macro semble faire un "drag and drop" de type "copier les cellules" (car j'ai les mêmes valeurs de ligne sur toutes les colonnes) et non un "drag and drop" de type "recopier les valeurs sans la mise en forme" pour garantir que les formules étaient déployées sur l'ensemble des colonnes.

Cordialement,
 
pas bien regardé ta demande
essaie ainsi

Sub deb()
With Sheets("data")
n = 1
While .Cells(2, n) <> ""
n = n + 1
Wend
nbcol = n - 4 - 1
End With

With Sheets("Suivi")
For k = 6 To 5 + nbcol
.Cells(6, k) = Sheets("data").Cells(2, k - 1).Value
Next


n = 1
While .Cells(6 + n, 5) <> ""
For k = 6 To 5 + nbcol
.Cells(6 + n, k) = .Cells(6 + n, 5).FormulaR1C1
Next
n = n + 1
Wend
End With

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

Discussions similaires

Réponses
6
Affichages
1 K
Réponses
4
Affichages
851
Réponses
6
Affichages
810
Retour