Un sub qui me crée une MFC et qui perturbe ma MFC existante
Coucou Bart'
Comme je te disais dans le précédent message (à 13h58) ==> Tout fonctionnait bien grâce à tes indications ==> MFC + double-clique + Importations, etc, etc...
Et abracadabra ==> Je n'ai plus aucune erreur sur aucune des 3 feuilles de pétanques.
________________________________________________________
Sauf que j'ai toujours une erreur pour un truc qui traîne depuis longtemps quand je fais un RAZ des tableaux sur les feuilles 9 ou 13 cibles, j'ai cette formule qui s'efface ==>
Sauf pour un seul petit point ==>
J'ai toujours une erreur pour un truc qui traîne depuis longtemps quand je fais un RAZ des tableaux sur les feuilles 9 ou 13 cibles, j'ai cette formule qui s'efface ==>
Alors que cette formule ne s’efface jamais sur la feuille "5 ateliers".
Je pense que ça vient de cette macro ci-dessous dans le module8, car elle n'est prévue que pour la feuille "5 ateliers" et je ne sais pas comment rajouter pour la "9 cibles" et la "13 cibles" ==>
Feuille "5 ateliers", c'est colonne 24 (le code VBA est ci-dessous)
Feuille "tir à 9 cibles", c'est colonne 14
Et feuille "tir à 13 cibles", c'est colonne 15
Sub Formule()
Application.ScreenUpdating = False
Set f1 = Sheets("Classmt par discipline+Général")
DerLig_f1 = f1.Range("A" & f1.Rows.Count).End(xlUp).Row
'enlever le mot de passe
f1.Unprotect Password:="seb"
Range("H5:H" & DerLig_f1).Formula2R1C1 = _
"=MAX(IF(('5 ateliers'!R3C1:R100C1=[@Nom])*('5 ateliers'!R3C2:R100C2=[@prenom])*('5 ateliers'!R3C3:R100C3=[@Sexe]),'5 ateliers'!R3C24:R100C24,""""))"
'Protéger la feuille
ActiveSheet.Protect Password:="seb", userinterfaceonly:=True
End SubDans ta nouvelle version, j'ai plusieurs erreurs sur toutes les feuilles :
Feuille 5 ateliers ==>
Feuille 9 et 11 cibles ==>
Car, comme je t'écrivais dans le message de 13h58, à l'aide de tes conseils, tout fonctionne très bien dans la version ci-dessous (sauf pour le pb des totaux dans les colonnes "Tot") :
Merci en tout cas de travailler sur mon pb, un dimanche soir en plus
Bonne soirée
il y a trop de macros inutiles dans le fichier, elles ont été créé mais comme le fichier est évolué, elles ne sont pas adaptées à cette nouvelle situation. C'est difficile pour dire lesquelles, mais j'ai ajouté une ligne au début "MsgBox "inutile?" et si vous ne verrez pas ce message pendant le mois/année suivant, vous pouvez peut-être la supprimer.Et pareil pour plusieurs autres.
J'ai continué avec mon fichier de hier soir, parce que j'avais supprimé cette fonction pour les MFCs et je l'ai intégré dans les tableaux. C'est pourquoi le tableau à gauche a 2 et l'autre une colonne supplémentaire (que tu peux cacher). Le but des TS était pour ne plus devoir copier les formules, mais comme le nombre de colonnes n'était pas pareil, la macro écrasait les formules. Maintenant, il n'y a plus des colonnes inutiles.
Bonjour Bart' et merci beaucoup...
Franchement, c'est top du top, merci d'avoir insisté
Tout est absolument parfait et j'ai fait beaucoup de mises en forme toute la matinée pour optimiser les affichages et sélections
Super bonne idée pour les MsgBox inutiles. Je verrai à l'usage, tu as raison...
Super les colonnes vides, tu as changé ton code pour les 2ème tableaux TS, j'ai vu
J'ai juste un tout petit détail que je suis incapable de changer.
Sur la feuille "13 cibles", l'importation me fait un filtre des "F" ce qui est normal et prévu mais sur la feuille "Classmt par..." ça ne m'affiche plus que les lignes avec des "F" (tous les "H" sont masqués)
J'ai le choix de faire une "réinitialisation" de la feuille "Classmt...' à la fin de cette Sub ==>
Sub Importer_13_Cibles()
'option 2 = les femmes
Importer_Noms_Prenoms Range("Tabel1[[#All],[Nom]:[Sexe]]"), Range("Tabel13").ListObject, "F" 'lancer cette macro avec les colonnes nom/prénom/sexe du premier TS, le 2ième TS + éventuellement le sexe
' Importer_Noms_Prenoms Range("Tabel13").ListObject, "F" 'lancer cette macro avec ce TS comme variable
End SubOu alors une autre solution si tu penses que c'est mieux de faire autrement ?
Encore mille mercis, tu m'as fait un boulot de folie !!!!!!!!
Ce classeur a été complètement retravaillé sur ta dernière version de 4h du matin (du mal à dormir je présume). J'ai passé 2 heures ce matin à optimiser dans les formats, ton travail
Voici le classeur remis à jour selon tes modifs et avec plusieurs améliorations de présentations ==>
re,
dans la macro "Sub Importer_Noms_Prenoms(Source As Range, LO_Dest As ListObject, Optional sSexe As String)", on a cette partie quelque part au milieu qui traite la source. Ces 5 lignes entres les étoiles sont nouvelles et à ajouter. Elles désactivent le filtre dans le tabel1
With Source 'la plage à copier (partie d'un TS ou la plage elle-même)
i = .Columns(1).SpecialCells(xlVisible).Count 'nombre de lignes visible (entête inclu)
If i > 1 Then 'il y a des personnes à copier (san entête)
Set c1 = .Cells(.Rows.Count + 100, 1).Resize(i, .Columns.Count) 'plage auxiliaire pour copier les personnes visibles, 100 lignes en dessous cette plage
.SpecialCells(xlVisible).Copy 'copier cellules visibles (=filtrées)
c1.PasteSpecial xlValues 'coller comme valeur
arr = c1.Offset(1).Resize(i - 1).Value2 'matrice avec ces noms, prénoms et sexes (comme ça, on n'a que les valeurs, sans les MFCs du source
c1.ClearContents 'vider plage auxiliaire
End If
If Not LO_S Is Nothing Then 'désactiver le filtre dans la source *****NOUVEAU************
LO_S.Range.AutoFilter
Else 'ce n'est pas un TS
Source.AutoFilter
End If 'FIN ********************************************************
End WithMagnifique !!!
Tout est parfait, merci beaucoup Bart'
jij bent de beste
Bonne journée
à bientôt