Adapter une feuille excel a une autre

cs_falafala Messages postés 74 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 23 décembre 2013 - 24 juil. 2006 à 18:23
cs_falafala Messages postés 74 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 23 décembre 2013 - 25 juil. 2006 à 14:06
Bonjour à tous.


Dans un classeur excel, j'ai 2 feuilles: la première dans laquelle je
met des données et la deuxième qui s'appuie sur la première pour
vérifier les données de de la première et qui réalise des traitements.

Si la première feuille fait 100 lignes, la deuxième aussi.

Mon pb est de pouvoir adapter la deuxième feuille à la première de
façon très simple, sans avoir à y aller à chaque fois que je rajoute ou
que j'enlève des lignes dans la première pour étendre la formule ou
supprimer des lignes.


Est ce qu'il y a un moyen de le faire de façon dynamique ou bien avec une petite macro??


Je vous remercie d'avance.


Fala fala

8 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
24 juil. 2006 à 18:53
Salut,

T'es en VBA ?
Sinon, j'ai pas bien compris ce que tu veux faire : tu veux que ta 2eme feuille soit à l'identique de la 1ere ?

@++

  Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"

Merci de prendre le temps de répondre à ce
sondage


Merci de prendre le temps de lire
le Règlement CS


    http://www.smileycentral.com/?partner=ZSzeb008_ZNxdm414YYFR
0
cs_falafala Messages postés 74 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 23 décembre 2013
24 juil. 2006 à 19:01
Je parle de deux feuilles excel.
Sur ma première feuille je rentre les données. Sur la deuxième, ca copie certaines données au même ligne mais il y a des colonnes supplémentaires (des différences par exemple).
Mais en gros, peu importe les traitements: si je voulais que mes deux feuilles soient identiques, (la première case de la deuxième feuille pointe sur la première case de la première feuille et ainsi de suite...), c est facile à faire en statique, mais dès qu on rajoute une ligne à la première feuille, la deuxième feuille ne suit plus. Il faut aller sur la deuxième feuille et tirer les formules.
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
25 juil. 2006 à 08:21
Ce que tu peux faire, c'est créer une nouvelle macro et t'enregistrer pendant que tu fais tes manipulations... Ensuite, si tu veux le réaliser dynamiquement, il te suffira d'utiliser des boucles... 

         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
0
cs_falafala Messages postés 74 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 23 décembre 2013
25 juil. 2006 à 12:27
j ai déjà enregistrer la macro suivante: étendre les formules contenues dans la feuille 2 de la première ligne vers la ligne 64. Ca c est facile.
Mais moi ce que j'aimerais, c est que la macro étende la formule jusqu'au numéro de ligne de la dernière ligne non vide de la première feuille.
Je ne sais pas si je suis clair....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
25 juil. 2006 à 13:07
tu peux faire une boucle de ce style :

i = 1
While Not Range("A" & i & "").Value = ""
i = i + 1
Wend
qui va te ramener a la premiere ligne non vide.
         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
25 juil. 2006 à 13:08
pardon, ca te ramenera à la premiere ligne vide!!!

         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
25 juil. 2006 à 13:15
Voici le code pour la première ligne vide :

Dim PremLiVide As Long

PremLiVide = Columns(1).Find("", [A1], , , xlByRows, xlNext).Row

MsgBox PremLiVide
'pour savoir le chiffre

Et ensuite, Range("A" & PremLiVide).Value = "Ce que tu veux"

@++

  Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"

Merci de prendre le temps de répondre à ce sondage
Merci de prendre le temps de lire le Règlement CS


    http://www.smileycentral.com/?partner=ZSzeb008_ZNxdm414YYFR
0
cs_falafala Messages postés 74 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 23 décembre 2013
25 juil. 2006 à 14:06
Merci à tous pour votre aide. J'ai pu au final coder en VBA ce que je voulais faire.
Je vous livre le code si jamais cela vous intéresse. Merci encore

Sub Etendre()
'
'

' traiter/vérifier les données, en appliquant les formules de calcul à autant de lignes que nécessaire
'

'nettoyage

Sheets("Data2").Select
num_ligne = Range("A1").End(xlDown).Row
If num_ligne > 2 Then
Range("A3:Z" & num_ligne).Delete 'supprime les cellules (et non seulement leur contenu)
End If

'traitement
Sheets("Data").Select
If Range("A2").Value <> "" Then 's'il y a au moins 1 ligne de données -> dupliquer les formules de calcul
num_ligne = Range("A1").End(xlDown).Row 'numéro de dernière ligne

Sheets("Data2").Select
If num_ligne > 2 Then
'on copie les formules de calcul s'il y a au moins 2 lignes de données
Range("A2:Z2").AutoFill Destination:=Range("A2:Z" & num_ligne), Type:=xlFillCopy
End If

MsgBox "Vos données ont été traitées avec succès."

Else
MsgBox "Il n'y a pas de données " & Chr(13) & "(cellule A2 vide)", vbExclamation, "Action impossible "
Range("A2").Select
End If

End Sub
0
Rejoignez-nous