copie de cellules d'une feuille vers l'autre

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

J

Jimrcl

Guest
Bonjour le forum,
dans ma macro, actuellement en chantier(, et quel chantier!!!)
je souhaite copier vers une feuille des valeurs provenant d'une autre feuille ou les valeurs de mes variables que j'ai incrémenté.
Quelqu'un a t'il un exemple parce que çà me marche pas chez moi, et je sais pas quand exactement il faut activer les worksheets...
ni comment on gère les différents formats de cellules
Si je pouvais apprendre sur un exemple...
Merci beaucoup.
Bon lundi, euh non mardi. 🙂
 
le plus simple pour toi est d'utiliser l'enregistreur de macros (outil-macros-nouvelle macro)

tu fais ta manip une fois à la main et tu vas voir le code généré.

tu pourras te créer tes exemples toi même

Sheets('Feuil1').Select
Range('A1').Select
Selection.Copy
Sheets('Feuil2').Select
Range('B8').Select
ActiveSheet.Paste

copie A1 de la feuille 1 vers B8 de la feuille 2, généré avec l'enregistreur

A+
 
Bonjour à toutes & tous,

Je n'ai pas d'exemple précis. Le plus simple je pense c'est que tu mettes en PJ ton fichier, avec ce que tu voudrais comme macro.

Comme ca tu auras un exemple parlant (forcement c'est ton projet !) qui te permettra de bien comprendre et de mieux suivre le defilement de la macro.

Attention je ne te dis pas qu'on va te faire un fichier complet pret à l'emploi :ermm: , mais on va partir sur une bonne base pour en exemple.

voila

++

Creepy
 
c vrai qu'avec le code c mieux
Voilà là j'essaye pour copier la valeur de ma variable
mais çà marche pas.
les données sont dans données, |o|
et les valeurs sont à copier dans la feuille MOTG

Code:
Sub MOTG()
Dim WSD As Worksheet
Dim WS6 As Worksheet
Dim nb_delai_2j As Integer
Dim i As Integer
Dim L As Integer
nb_delai_tot = 0
nb_delai_2j = 0
Set WSD = ThisWorkbook.Sheets('Données')
Set WS6 = ThisWorkbook.Sheets('MOTG')


WSD.Select
L = WSD.Range('B65536').End(xlUp).Row + 1 ' On identifie la dernière ligne vide en partant du bas
'With WSD
For i = 12 To L
If ('I' & i) = 'X' Then     'Or 'x'
nb_delai_2j = nb_delai_2j + 1
End If
Next i

WS6.Range('A1').Value = nb_delai_2j
End Sub


Merci encore
 
Bonjour Jimrcl, Eric S, Creepy,

Je ne suis pas sûr d'avoir tout compris, mais à tout hasard....

Sub MOTG()
Dim WSD As Worksheet
Dim WS6 As Worksheet
Dim nb_delai_2j As Integer
Dim
i As Integer
Dim
L As Integer

      nb_delai_2j = 0
      Set WSD = ThisWorkbook.Sheets('Données')
      Set WS6 = ThisWorkbook.Sheets('MOTG')
     
      With WSD
            L = .Range('I65536').End(xlUp).Row + 1   'dernière ligne vide COLONNE I
            For i = 12 To L
                  If UCase(.Range('I' & i).Value) = 'X' Then        'Ucase() pour 'x' ou 'X'
                        nb_delai_2j = nb_delai_2j + 1
                  End If
            Next i
      End With
     
      WS6.Range('A1').Value = nb_delai_2j
End Sub
Si tu as besoin de plus d'explications, n'hésite pas à relancer ce fil de discussion....

Cordialement.
 
à force de chercher j'ai trouvé,
il me fallait utiliser les cells(😉 plutot que les range()
pourquoi je sais pas mais bon çà marche comme çà alors...
Merci à tous.
Bonne journée :silly:
 
- 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
12
Affichages
1 K
Retour