Rechercher : dans
Par :

[VBA-EXCEL] Copier plage de cellules aléatoir

Dernière réponse le 22 mai 2008 à 13:39:49 Alecine, le 22 mai 2008 à 09:25:22 
 Signaler ce message aux modérateurs

Bonjour,
Voila j'ai de petites compétences en VBA et j'aimerais créer un bouton avec une macro me permettant de copier une plage de valeur non définie (par exemple de A1 à EXX, "XX" étant une valeur inconnue) dans une autre feuille
Donc je pense qu'il faudrait une boucle qui cherche tant qu'une case contient quelque chose et qui s'arrete lorsque c'est vide.
Une fois ceci fait la plage de cellues serait copiée et envoyée vers une nouvelle feuille (ou bien une feuille existante)

Pensez vous que cela est réalisable facilement ?
Je connais les bases mais n'ai pas assez d'experience encore pour faire cela !
Je comprend tout de meme les codes !

Merci d'avance a vous en éspérant avoir une réponse !!

Configuration: Windows XP
Firefox 2.0.0.12

Meilleures réponses pour « [VBA EXCEL] Copier plage de cellules aléatoir » dans :
[Excel] Colorer des cellules sur conditions VoirIl existe dans Excel des fonctions très pratiques mais peu connues et peu utilisées. Exemple : vous souhaitez qu'une cellule se colore automatiquement en rouge (ou autre mise en forme de police, de bordure, de trame) selon une condition : un...
Tableur - La sélection des cellules VoirSélection de cellules Le tableur est un formidable outil pour manipuler des données. Ainsi, pour pouvoir manipuler les données il est nécessaire de disposer d'outils permettant de sélectionner rapidement toutes les cellules dont on a...

1

Alecine, le 22 mai 2008 à 10:23:59

Je me disais bien aussi que ca n'enthousiasmerait pas grand monde ^^

Répondre à Alecine

2

nkjhsdf, le 22 mai 2008 à 10:26:51

Salut!
tu dois faire une boucle
do

loop until <condition>
ou<condition> serait une case vide
pour la fonction qui copie, je sais plus, désolée.
mon aide aura était assez rudimentaire!...

Répondre à nkjhsdf

3

Alecine, le 22 mai 2008 à 10:34:13

Pour copier ca va j'ai fais avec les moyens du bord voila ce que j'ai :
Je fais une création de feuille suivi d'un copier coller de A65 jusqu'a ma case active (cette derniere case j'aimerais qu'elle soit trouvée tte seule ^^)
Et la plage sélectionnée est copiée dans la feuille crée au préalable

'Création d'une nouvelle feuille
Sheets("Projection").Select
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "Nouvelle"
'Copier/Coller des cellules
Sheets("Projection").Select
Range("A65", ActiveCell).Select
Selection.Copy
Sheets("Nouvelle").Select
Range("A1").Select
ActiveSheet.Paste



End Sub

Répondre à Alecine

4

Alecine, le 22 mai 2008 à 11:24:06

Personne ?

Répondre à Alecine

5

Polux31, le 22 mai 2008 à 11:49:33

Bonjour,

Pour trouver la dernière cellule non vide d'une ligne tu peux faire comme ceci :

Dim i As Long
i = 1
While Cells(65,i).value <> ""
i = i + 1
Wend
MsgBox "La dernière cellule non vide de la ligne 65 est : " & i - 1


En espérant que ça puisse t'aider.

;o)

polux «Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.» 
Nicolas Boileau

Répondre à Polux31

6

Alecine, le 22 mai 2008 à 11:59:13

Oui en effet ca peut m'aider !
Mais la recherche serait plus pertinente en cherchant dans la colonne, ici ma colonne C
Il ne doit pas y avoir bcp de modifs je pense

Répondre à Alecine

7

Polux31, le 22 mai 2008 à 12:22:14

Re,

Non c'est facile.
Dans Cells(65, i), le premier chiffre (65) c'est la ligne et le deuxième (i) c'est la colonne. Il suffit de donner à i la valeur numérique de la colonne. C'est 3 pour la colonne C ... et mettre i = 3 avant le while ...

;o)

polux «Ce que l'on conçoit bien s'énonce clairement, Et les mots p­our le dire arrivent aisément.» 
Nicolas Boileau

Répondre à Polux31

8

Alecine, le 22 mai 2008 à 13:38:51

Merci je vais essayer d'avancer dans ce sens ^^

Répondre à Alecine

9

 Polux31, le 22 mai 2008 à 13:39:49

De rien,

;o)
«Ce que l'on conçoit bien s'énonce clairement, Et les mots p­our le dire arrivent aisément.» 
Nicolas Boileau

Répondre à Polux31