ventilation de données par macro

archi

XLDnaute Impliqué
Bsr,
ci-joint un fichier pour expliquer mon problème de macro
merci d'avance
bye [file name=Test_BDV14.zip size=33705]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Test_BDV14.zip[/file]
 

Pièces jointes

  • Test_BDV14.zip
    32.9 KB · Affichages: 59

archi

XLDnaute Impliqué
non, 'feuille à 3' ou 'feuille à 4' sont toujours en place dans le classeur, je les masque simplement...se sont des feuilles intermédiaire...évidemment, on pourrais sans passer, mais là c'est de la macro lourde...

bye
 

ERIC S

XLDnaute Barbatruc
Bonjour

les choses que je ne comprends toujours pas :

1/ sur tes feuilles EQ3, EQ4 tu veux conserver tout l'historique des rencontres ?

2/ tu ne m'as pas dit comment tu remplis les données sur 'feuilles à 3'... je ne vois pas de macro qui le fait

A+
 

archi

XLDnaute Impliqué
Salut,

1/ sur tes feuilles EQ3, EQ4 tu veux conserver tout l'historique des rencontres ? Non


2/ tu ne m'as pas dit comment tu remplis les données sur \\'feuilles à 3\\'... je ne vois pas de macro qui le fait
les feuilles se remplissent automatiquement par des formules liées avec les feuilles 'Eq3'...!!

bye
 

ERIC S

XLDnaute Barbatruc
Bonjour

un exemple joint de ce qui me semblerait mieux comme approche

sans doute des bugs, pas tout testé

1 feuille pour rencontre (dans un premier temps ne pas utiliser le bouton nouvelle feuille)

1 ajout sur feuille base : nb de joueurs par équipe

test à faire

1/ remplissage des feuilles joueurs (bouton Enregistrer les résultats
2/ le bouton 'réafficher...' est là en temporaire pour réafficher le bouton enregistrer sans effacer les données et refaire l'opération 1

3/ fonctionnement normal : enregistrer puis nouvelle feuille

4/ sélection journée division poule, équipe, joueurs
5/ remplissage matches....

la feuille comporte des lignes qui se masquent selon le nombre de joueurs (défini sur feuille base)

A+ [file name=pingTestBDV16.zip size=40457]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/pingTestBDV16.zip[/file]
 

Pièces jointes

  • pingTestBDV16.zip
    39.5 KB · Affichages: 27

archi

XLDnaute Impliqué
Merci Eric d'avoir pris sur ton temps pour simplifier mon fichier, Bravo

permets moi une remarque concernant la mise en page....
En effet, le faite de scinder en deux la feuille à '6 joueurs', rend la lisibilité peu facile pour les non initiés de mon site !!
(Je transforme la page en html)
il serait plus judicieux de revenir à l'ancienne version....si c'est possible ?
Pour les autres remarques, voir l'exemple ci-joint
bye [file name=Test_BDV17.zip size=43904]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Test_BDV17.zip[/file]
 

Pièces jointes

  • Test_BDV17.zip
    42.9 KB · Affichages: 23

ERIC S

XLDnaute Barbatruc
Bonjour

je regarde (mardi sans doute)

Pour le 6 joueurs, soit je suis passé au travers soit j en'avais que le 3 joueurs et le 4 joueurs dans ton fichier

Tant qu'il s'agit de bosser sur la présentation, cela ne doit pas poser de pb

Par contre s'il y a des erreurs de remplissage ou autre n'hésite pas à le dire

A+
 

archi

XLDnaute Impliqué
slt,

question à 10 balles
comment faire exécuter ta macro suivant à partir d'une autre feuille que 'Feuille à 4'??

Code:
Sub Equipe(Rangebase As String, RangeCopy As String, Nom As String)
Dim Lig1 As Integer, Lig2 As Integer
Dim i As Integer
  
Application.ScreenUpdating = False
   Sheets(WSBase).Range(RangeCopy).Copy
    
   With Sheets(Nom)

        'copie mise en forme et valeur
        .Range('A65536').End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteFormats
        .Range('A65536').End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
        Lig1 = .Range('A65536').End(xlUp).Row
        Lig2 = .Range('J65536').End(xlUp).Row + 1
        .Range('A4:H' & Lig1).Validation.Delete
        Range(.Range('A4'), .Range('H' & Lig1)).Sort Key1:=.Range('A4'), Order1:=xlAscending
        If Lig1 > Lig2 - 1 Then
            Range(.Range('J' & Lig2 - 1), .Range('M' & Lig2 - 1)).AutoFill _
            Destination:=Range(.Range('J' & Lig2 - 1), .Range('M' & Lig1)), Type:=xlFillDefault
        End If
   End With
    
   Sheets(WSBase).Activate
  
Application.ScreenUpdating = True
End Sub

merci
bye
 

ERIC S

XLDnaute Barbatruc
Bonjour

la macro equipe est appelée par un eautre macro qui passe les arguments rangebase, rangecopy et nom

syntaxe
call equipe(arg1,arg2,arg3)

je regarde pour le dernier fichier que je t'ai envoyé en reprenant les formules

A+
 

archi

XLDnaute Impliqué
re,

en fait, je veux simplement placer le bouton de la macro sur la feuille 'Eq4'

j'ai essayé, mais après exécution, elle reste sur la feuille 'Feuille à 4'

donc, où placer la ligne:
Sheets('Eq4').Select
ou
Sheets('Eq4').activate

??
 

ERIC S

XLDnaute Barbatruc
Bonjour

je ne sais pas sur quel fichier tu travailles mais si je me réfère à Test_BDV16, tu déclares WSBase égal à feuille à 3

il faudrait dans subequipe3 (et 4...) introduire la ligne en début de macro juste après les 'dim'

WSBase=activesheet.name

en déclaration tu peux alors réduire la ligne à :
Public Const WSBase As String

Je regarde les équations pour le nouveau fichier. Quel principe utilises-tu pour les contre et perf (au minimum un classement ?)

A+
 

ERIC S

XLDnaute Barbatruc
re

fichier BVD17A

A tester car je n'ai pas tout pu revoir
les colonnes en caractères gris seront à mettre en caractère blanc dans fichier final

vérifier le fonctionnement de la feuille

A+ [file name=pingTestBDV17A.zip size=45269]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/pingTestBDV17A.zip[/file]
 

Pièces jointes

  • pingTestBDV17A.zip
    44.2 KB · Affichages: 29

archi

XLDnaute Impliqué
slt Eric,

Ya un bug au niveau de
Code:
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:='=Noms'

quand on change de division ???

Par ailleurs, je t'envoie un fichier car je n'arrive pas a modifier le code concernant l'exécution de la macro sur une autre feuille

merci
bye [file name=Test_BDV16_20060607111849.zip size=42038]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Test_BDV16_20060607111849.zip[/file]

Message édité par: archi, à: 07/06/2006 11:23
 

Pièces jointes

  • Test_BDV16_20060607111849.zip
    41.1 KB · Affichages: 24

ERIC S

XLDnaute Barbatruc
re

je regarde pour mon pb, je pense que cela est dû au fait que je protège la feuille et je croyais l'avoir résolu

comme j'ai eu un plantage hier, je n'avais peut-être pas le dernière version de fichier


pour ton pb de lancement de macro, j'aijuste besoin de comprendre : tu veux lancer ta macro à partir de eq4 et non de 'feuille à 4' mais en revenant sur eq4 à la fin

si c'est cela normalement

Sub Equipe4_A()
....
...

Next i
Sheets('EQ4').Activate 'retour feuille EQ4
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 111
Messages
2 085 403
Membres
102 883
dernier inscrit
jameseyz