[VBA/Excel] copier cellule vers autre feuille

Fermé
styvea Messages postés 34 Date d'inscription vendredi 24 juillet 2009 Statut Membre Dernière intervention 12 juillet 2011 - 6 juil. 2010 à 16:44
Morgothal Messages postés 1236 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 19 mai 2015 - 8 juil. 2010 à 15:33
Bonjour,

J'aimerais copier le contenu d'une cellule dans une autre feuille dans la 1ère cellule vide que je trouve.

Enfin ce serait plutot plusieurs cellules, j'ai une feuille au format :

nom | prénom | date

et j'aimerais en fonction du mois de la date, recopier le nom et le prénom dans une autre feuille (j'ai 12 autres feuilles, une pour chaque mois).

On m'a parlé de la fonction var = Month(Range("cellule de la date"))

Mais je ne sais pas faire la copie du nom et du prénom =/


Quelqu'un saurait coder ça en maccro svp?
Ou du moins me lancer sur la voix car je suis débutant dans le domaine =/


Merci


A voir également:

1 réponse

Morgothal Messages postés 1236 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 19 mai 2015 183
8 juil. 2010 à 15:33
Bonjour,

Tout d'abord écrire ce bout dans un nouveau module :

Global vardate As Date
Global nom, prenom As String
Global compteur As Integer

Et ensuite copier dans ThisWorkbook et adapter tout ça à ta feuille :

Sub choisir_feuille_en_fct_du_mois()

For compteur = 1 To X 'X c'est le nombre de lignes qu'il y a dans la colonne des noms
Sheets("le_nom_de_ta_feuille_ou_tu_as_tes_noms").Select

nom = Cells(compteur, numéro_de_colonne_de_tes_noms)
prenom = Cells(compteur, numéro_de_colonne_de_tes_prenoms)
vardate = Cells(compteur, numéro_de_colonne_de_tes_dates))


If Month(vardate) = 1 Then
Sheets("Janvier").Select
Call je_cherche_la_premiere_cellule_vide_et_je_colle
End If

If Month(vardate) = 2 Then
Sheets("Février").Select
Call je_cherche_la_premiere_cellule_vide_et_je_colle
End If

If Month(vardate) = 3 Then
Sheets("Mars").Select
Call je_cherche_la_premiere_cellule_vide_et_je_colle
End If
'etc...

Next
End Sub

Sub je_cherche_la_premiere_cellule_vide_et_je_colle()

Dim noligne As Integer

noligne = 1

While Cells(noligne, numéro_de_colonne_ou_tu_veux_coller_ton_nomprénomdate) <> ""
noligne = noligne + 1
Wend

Cells(noligne, numéro_de_colonne_ou_tu_veux_coller_le_nom) = nom
Cells(noligne, numéro_de_colonne_ou_tu_veux_coller_le_prénom) = prenom
Cells(noligne, numéro_de_colonne_ou_tu_veux_coller_la_date) = vardate

End Sub


Voilà j'espère que ça t'aidera :)

A+
3