Worksheets("feuil2").Range("I"&(a+m):"AM"&(a+m)).Value = _ Worksheets("feuil1").Range("G5:AK5").Value
Worksheets("feuil2").Range("I" & (a+m) & ":AM" & (a+m)).Value = _ Worksheets("feuil1").Range("G5:AK5").Value
MaRange = "I" & (a+m) & ":AM" & (a+m) Msgbox MaRange 'en prenant : a+m = 5 par exemple.. tu obtiendras : ' MaRange => "I5:AM5"
' => cells (ligne,colonne) for i=1 to 10 debug.print cells(1,i).value next
je voudrais copier des cellules qui sont sur la même ligne mais je n'arrive pas à incrémenter mon instruction pour qu'elle passe à la colonne suivante.Pourquoi passer par une boucle pour copier tes cellules alors que tu pourrais directement copier la RANGE les concernants ?
Sheets("Feuil2").Range("C" & (a + m)).Value = _ Sheets("Feuil1").Range("F12").Value ' a et m ont une valeur qui varie en fonction de l année et du mois choisi
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question' Pa rexemple: Range("A15:G15").Value = Range("A5:G5").Value 'peut s'écrire aussi: Range(Cells(15, 1), Cells(15, 7)).Value = Range(Cells(5, 1), Cells(5, 7)).Value
lorsque je veux copier plusieurs cellules (ou valeurs de cellule), genre:???
les cellules de Feuil1 de G5 à AK5 (31 colonnes)
pour les coller dans Feuil2 de I à AM (31 colonnes aussi)
mais avec un numéro de ligne qui peut changer cela ne fonctionne plus.
Option Explicit Public a As Integer, m As Integer, tot As Integer, travail As Integer, ticket As Integer, conge As Integer, repos As Integer, arret As Integer, vac As Integer Private Sub Worksheet_SelectionChange(ByVal Target As Range) m = Month("01 " & Range("F3").Text & " 2000") - 1 a = (Range("E3").Value Mod 2012) + 3 + (12 * (Range("E3").Value - 2012)) travail = Sheets("Feuil1").Range("F12").Value repos = Sheets("feuil1").Range("F13").Value conge = Sheets("feuil1").Range("F14").Value arret = Sheets("feuil1").Range("F15").Value vac = Sheets("feuil1").Range("F20").Value If Target.Address = "$AL$6" Then Range("G5:AK5").ClearContents End If If Target.Address = "$AL$4" Then MsgBox ("Rappel des données impossible pour le moment") End If If Target.Address = "$AL$5" Then Worksheets("feuil1").Range("G5:AK5").Copy _ Destination:=Worksheets("feuil2").Range("I" & (a + m))
Si tu ne cherches pas à COPIER (c'est à dire en utilisant COPY) mais juste à récupérer la valeur de tes cellules tu peux utiliser :J'ai tenté' Pa rexemple: Range("A15:G15").Value = Range("A5:G5").Value 'peut s'écrire aussi: Range(Cells(15, 1), Cells(15, 7)).Value = Range(Cells(5, 1), Cells(5, 7))
Worksheets("feuil2").Range("I"&(a+m):"AM"&(a+m)).Value = _ Worksheets("feuil1").Range("G5:AK5").Value
Modifié par paolo_m le 21/02/2014 à 15:04
Cela m'a permis de comprendre l'utilité de l'esperluette (en fouillant dans l'aide d'office pour savoir ce qu'est un concatener) !
Coule !!!
21 févr. 2014 à 15:07
Ce symbole, utilisé dans certains langages comme le VB permet (entre autre) de faire la concaténation de variables (comme tu as pu le voir).
...par contre... N'oublie pas clore la discussion stp...
21 févr. 2014 à 15:38