Liaison pour insertion de lignes

Banzai64 a écrit :

Et si en plus tu peux imaginer le résultat du loto cela m'arrangerait

Si c'était le cas je commencerai par moi, charité bien ordonnée commence pas soit même

Ce que j'ai mis au dessus c'est une alternative qui me conviendrai mais quand je l'ai expliqué j'ai trouvé cela moi même compliqué alors... Mais si c'est faisable tant mieux et si ça ralenti pas le classeur encore mieux! J'attendrais ta prochaine réponse avec impatience!

EDIT: j'ai testé avec mon ancienne macro de filtrage par texte (qui ne filtre qu'une seule feuille) et même après filtrage lorsque j'utilise ta macro d'insertion sur 3 feuilles PAS DE DEBOGAGE, le problème viens donc bien de ma macro de filtrage, je te rend les deux codes pour voir si tu trouves "l'intrus", cela serait peut être plus simple pour toi que de créer un code entier.

Ancien filtrage sur feuille active:

Private Sub boutonok_Click()
'limite du nombre de noms à filtrer (peut etre modifiée)
Dim naf(3000)

'initialiser à "" les noms à filtrer
For A = 1 To 1000
naf(A) = "a"
Next A

'initiales à rechercher
initiales = TextBox1.Value
'nombre d'initiales
nbrini = Len(initiales)

compteur = 1

' déterminer si le titre du manga a les initiales à rechercher (limite 300 peut etre modifiée)
For A = 1 To 1000
    If Left(Worksheets("Sommaire").Range("a" & A + 9).Value, nbrini) = initiales Then
    naf(compteur) = Worksheets("Sommaire").Range("a" & A + 9).Value
    compteur = compteur + 1
    End If
Next A

'filtrage
ActiveSheet.Range("$A$9:$J$291").AutoFilter Field:=1, Criteria1:=Array( _
        naf(1), naf(2), naf(3), naf(4), naf(5), naf(6), naf(7), naf(8), naf(9), naf(10), naf(11), naf(12), naf(13), naf(14), naf(15), naf(16), naf(17), naf(18), naf(19), naf(20), naf(21), naf(22), naf(23), naf(24), naf(25), naf(26), naf(27), naf(28), naf(29), naf(30), naf(31), naf(32), naf(33), naf(34), naf(35), naf(36), naf(37), naf(38), naf(39), naf(40), naf(41), naf(42), naf(43), naf(44), naf(45), naf(46), naf(47), naf(48), naf(49), naf(50), naf(51), naf(52), naf(53), naf(54), naf(55), naf(56), naf(57), naf(58), naf(59), naf(60), naf(61), naf(62), naf(63), naf(64), naf(65), naf(66), naf(67), naf(68), naf(69), naf(70), naf(71), naf(72), naf(73), naf(74), naf(75), naf(76), naf(77), naf(78), naf(79), naf(80), naf(81), naf(82), naf(83), naf(84), naf(85), naf(86), naf(87), naf(88), naf(89), naf(90), naf(91), naf(92), naf(93), naf(94), naf(95), naf(96)), Operator:=xlFilterValues

'ferme la fenêtre
TextBox1.SetFocus
TextBox1.Value = ""
choixdumanga.Hide

End Sub

Nouvelle macro de filtrage par texte sur trois feuilles (Sommaire, Prévisions, Tableau des téléchargements):

Private Sub TextBox1_Change()
Application.ScreenUpdating = False
Me.TextBox1 = Application.WorksheetFunction.Proper(Me.TextBox1)
Dim ws As Worksheet
  For Each ws In Sheets(Array("Sommaire", "Prévisions", "Tableau des téléchargements"))
Dim sCritere As String

    sCritere = "=" & TextBox1.Text & "*"
    ws.Range("$A$18:$J$100000").AutoFilter Field:=1, Criteria1:=sCritere, _
        Operator:=xlAnd

  Next ws
  End Sub

A savoir que la première il fallait que j’appuie sur un bouton pour que cela m'ouvre choixdumanga(Userform) et ensuite dans la petit fenêtre qui apparaissait je tapait mon texte et la nouvelle c'est une textbox directement inséré sur mes 3 feuilles (pour pouvoir filtrer des 3 feuilles) ou je tape ma recherche et ou le résultat s'affiche seul sans intervention sur un bouton OK ou touche Entrée.

EDIT 2: A savoir également que lors du DEBOGAGE, mes lignes s'insère correctement MAIS seul sur la feuille "Tableau de téléchargements" la copie des valeurs ne se fait pas... Il doit y avoir une différence entre mon ancienne et ma nouvelle macro de filtrage mais je ne vois pas ou le bas blesse...

Une autre solution qui m’irait serait de scinder mes 3 feuilles en deux (pour garder la textbox de recherche toujours visible, ça je sais faire) pour ensuite (via une macro) aller à une ligne via ce qu'on rentre dans la textbox.

Par exemple si je rentre "D" Il m’emmènera à la première ligne ou il y a un mot qui commence par "D" en colonne A. Si je met "De" il m’emmènera à la première valeur "De" en colonne A etc etc...

Cela réglerait le problème de filtrage (puisque il n'y en aurait plus) et j'aurai toujours ma textbox de recherche.

C''est une autre solution que je propose, après à toi de me dire ce qui serait le plus simple et surtout le plus réalisable car moi je n'y connais rien en code (j'essaie de m'y mettre) et donc je suis totalement dépendant de tes décisions.

Bonjour

A lire les codes, qui pour moi sont bons, je ne vais pas trouver une solution, tant que je n'ai pas vu le problème

Banzai64 a écrit :

Suis comme St Thomas

Ensuite

Banzai64 a écrit :

mais il me faut le fichier dernière version

Et dans celui-ci dans lequel tu auras marqué "on fait .... et ensuite on fait ..... et c'est l'erreur"

Oups désolé zaizai!

Alors en re créant un fichier test me suis rendu compte que les macros rentraient en conflit que sur mon fichier à moi et pas sur le fichier test que j'ai créé de zéro...

Je t’envoie le fichier test (celui avec les indications en rouge sans mise en forme rien) et mon fichier à moi (épuré bien sur pour passer la barre des 300ko). Peut être trouvera tu la différence qui fait que le débogage se lance sur le miens et pas sur le fichier test...

12mon-fichier.xlsm (297.47 Ko)
10fichier-test.xlsm (26.41 Ko)

Bonjour

Affiche la colonne masquée (H) dans la page "Tableau des téléchargements" et refais un test

Ahahahahaahahah t'es un dieu! Et moi un simple mortel super c*n saur les bords...

Problème réglé je peux filtrer + insérer avec ta macro sans problème... Encore merci de tout le temps que tu as passé (presque pour rien) à batailler avec mes explications. J'espère que la solution pour l'autre sujet sautera aux yeux pareillement!

Bonjour!

Je reviens à l'attaque sur ce sujet pour un problème qui y est lié (et ouai... encore...).

En effet j'ai ouvert hier un sujet pour un problème de dédoublement de MFC lorsque j'insère des nouvelles lignes dans mes tableaux... En gros quand j'insère une nouvelle ligne Excel me créer des MFC (que j'avais appliqué à la colonne entière) mais uniquement pour la nouvelle cellule de la ligne inséré...

Par exemple j'applique une MFC de A1 à A100, si j'insère une ligne en A50 il va me recréer toutes les MFC pour uniquement la nouvelle cellule A50 et changer la plage A1:A100 en un truc du genre A49:A51:A100... Du coup je part de base avec une 12e de MFC par colonne de mon tableau donc a chaque fois que j'insère une ligne et bien +12MFC dans ma liste de Gestion des MFC ce qui devient au bout du compte ingérable étant donné la fréquence à laquelle je rajoute des lignes à mon tableau...

On m'a proposé la solution d'une "plage dynamique" le problème est que cela fonctionne bien lors d'une insertion manuelle mais PAS lors d'une insertion via la macro que tu m'a donné Banzai... Il serait bête d'abandonner ta macro pour refaire comme avant et insérer manuellement sur 3 feuilles, grosse pertes de temps et en plus tu te serai embêté pour rien... J'aimerai également régler ce problème de dédoublement de MFC via ta macro.

Aurais-tu une solution pour empêcher ce "phénomène"? Bien amicalement.

Sujet lié: https://forum.excel-pratique.com/excel/dedoublement-de-mfc-t57829.html

Bonjour

Je n'ai pas trop de solution et ayant lu le sujet je pensais que la solution de James007 était valable

Il n'y a pas de raison pour que cela fonctionne en manuel et pas par macro

Il faudrait que tu fournisses un fichier avec quelques pages et dans chaque page que les MEFC utiles

Franchement comme-ça je n'ai pas de solution en vue, il faut que je teste

Voila j'ai créer un fichier a partir de l'original en plus "light" ou y'a pas toutes les colonnes mais ou y'a toutes les MFC nécessaires.

Il y a aussi dessus la macro d'insertion de ligne et je te laisse maitre pour ce qui est de la plage dynamique étant donné que tu as l'air de connaitre mieux que moi. J'ai re fais un test et effectivement via insertion de ligne manuelle: pas de dédoublement des MFC

insertion via macro: dédoublement...

Voila j'espère que tu trouvera ce qui ne va pas et que tu pourras m'expliquer comment régler le problème sur mon fichier source

Encore merci Banzai!

12test.xlsm (147.56 Ko)

Bonjour

Quand tu fournis un fichier pour un problème de MEFC, arranges toi pour que les MEFC existantes soient sans erreurs

mefc zayx mefc zayx 002

Sinon je pense que cela vient de la copie de la ligne dans la ligne insérée, j'ai modifié la macro InsertionLigne et je n'ai pas vu de dysfonctionnement

J'ai augmenté d'une ligne la zone de la MEFC : Je pense que c'est pour éviter le défaut lors de l'insertion sur la dernière ligne du tableau, la MEFC se trouvant hors du tableau

A tester

19zayx-mefc-v001.xlsm (118.40 Ko)

Effectivement le problème venait donc bien de la macro qui n'étais pas adaptée pour ne pas dédoubler les MFC

J'ai test sur mon fichier en changeant uniquement la macro et le problème à l'air d'être réglé.

Désolé pour le fichier mais bon j'ai du supprimer des colonnes pour rentrer dans les 300ko max qu'on peut partager sur ce forum... Sinon y'avais des MFC valable pour tes test

Encore merci Banzai, rapide mais efficace comme à ton habitude mais juste par curiosité, la plage dynamique y fait quelque chose aussi ou juste la modification de la macro règle le problème?

Voili voilou

Bonjour

Je n'ai pas testé avec la plage dynamique donc je n'émettrai pas d'avis la dessus

Le principal pour toi c'est que cela fonctionne

Une solution à été trouvé et c'est cela qui compte

C'était juste pour savoir et informer la personne qui m'aide en parallèle sur l'autre sujet Tu as raison tant que mon problème est réglé ça me va, adieu les liste interminable de MFC Bonne journée!

Rechercher des sujets similaires à "liaison insertion lignes"