• Initiateur de la discussion Initiateur de la discussion marcel
  • 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 !

M

marcel

Guest
bonjour forum
merci pour votre mine de renseignement

Un petit probleme simple deux seconde devrait suffir
a un pro VBa

voila

Dans une formule
il y a :

Sheets(1).Range("A1")

Or j'aimerais que le 1 soit remplacé par la valeur d'une cellule automatiquement.
par exemple: la cellule B4 de la feuille2 a pour valeur 33

ce qui devrait donné quelque chose de ce genre
Sheets(1).Range("A (valeur celulle ba feuille2 soit 33)")

impossible pour moi de trouver la mise en forme exacte.

Merci
 
petite précision, la valeur renvoyée par B4 n'est pas un numéro de colonne (comme je l'ai mis par erreur ci-dessus) mais un numéro de ligne. Je venais de manipuler des .Cells , ce qui explique la confusion 🙂
 
Cela ne marche pas ti
je te joins un exemple de ce que je souhaite faire
J'ai apliqué ta solution dans la macro
essaye la macro elle bug au niveau de range("A" & col)

je débute

De plus j'aimerais que la macro s'effectue a chaque changement de la cellule a1 de la feuille 1, encore un prblme a résoudre

merci pour ton aide.
 

Pièces jointes

bonjour,

en décomposant et comme suit, ça marche :

Sub recopie()
Dim Col As Long 'variable ligne
Col = Sheets("feuil1").Range("A1").Value 'col prend la valeur de la cellule a1

Range("A5:B9").Select 'selection de la plage
Selection.Copy 'copie de la plage
Sheets("Feuil3").Select
Range("A" & Col).Select 'selection feuille3 collone a ligne defini
ActiveSheet.Paste 'recopie le copié
Range("D4").Select 'place toi en
End Sub

A+
 
je n'aime pas les sélections (c'est peu élégant), voilà une réadaptation de ta macro

Sub recopie()
Dim Col As Long, Plage As String 'variable ligne
Col = Sheets("feuil1").Range("A1").Value 'col prend la valeur de la cellule a1
Plage = "A" & Col
Range("A5:B9").Copy Sheets("Feuil3").Range(Plage)
Range("D4").Select 'place toi en
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
330
  • Question Question
Microsoft 365 Code VBA
Réponses
10
Affichages
904
Réponses
11
Affichages
810
Retour