Tableau récapitulatif
Résolu/Fermé
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
-
26 sept. 2016 à 15:17
cedrixxx Messages postés 34 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 28 octobre 2016 - 4 oct. 2016 à 08:12
cedrixxx Messages postés 34 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 28 octobre 2016 - 4 oct. 2016 à 08:12
A voir également:
- Tableau récapitulatif
- Tableau croisé dynamique - Guide
- Code ascii tableau - Guide
- Tableau word - Guide
- Trier tableau excel - Guide
- Le fichier contient un tableau présentant un extrait des livres les plus prêtés à paris en 2016. filtrez le tableau pour ne faire apparaître que les bandes dessinées ado. puis filtrez le tableau pour ne faire apparaître que celles dont l'auteur est zep. quel est le titre de la bande dessinée ado de zep qui a été la plus prêtée d'après ce tableau ? ✓ - Forum Windows 10
8 réponses
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
26 sept. 2016 à 16:28
26 sept. 2016 à 16:28
Bonjour
Un exemple à adapter (avec macro)
http://www.cjoint.com/c/FIAoB64xCFq
Cdlmnt
Un exemple à adapter (avec macro)
http://www.cjoint.com/c/FIAoB64xCFq
Cdlmnt
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
27 sept. 2016 à 16:08
27 sept. 2016 à 16:08
Les cellules fusionnées sont toujours une source de problèmes aussi bien dans l'utilisation de fonctions excel que dans l'utilisation de macros.
Pour essayer d'aller plus loin, peux tu envoyer un bout de ton fichier, sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse
tu fais "Coller".
Cdlmnt
Pour essayer d'aller plus loin, peux tu envoyer un bout de ton fichier, sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse
tu fais "Coller".
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
Modifié par cedrixxx le 27/09/2016 à 16:37
Modifié par cedrixxx le 27/09/2016 à 16:37
https://www.cjoint.com/doc/16_09/FIBlIqfSA6t_R%C3%A9activit%C3%A9-et-dispo-Juillet.xls
Je pense ne pas trop être a coter de la plaque mais bon...
Pour le résultats s'il n'est pas en A147 ce n'est pas vraiment grave tant que le listing des machines "en erreur" est facilement visible.
Cordialement,
ub Test_Indispo() ' ' Test_Indispo Macro ' ' Touche de raccourci du clavier: Ctrl+a ' Application.Run "PERSONAL.XLSB!Test_Indispo" Range("AI6").Select Application.Run "PERSONAL.XLSB!Test_Indispo" Option Explicit ' constantes à modifier selon ta configuration ' Feuille Source Const FS = "Données_corrigées" Const lidebFS = 2 Const comacFS = "AF" Const coerrFS = "AJ" ' Feuille But Const FB = "Listing-machine" Const celdebFB = "A147" ' message recherché Const s = "Machine non répertorié" Public Sub OK() Dim liFS As Long, lifinFS As Long Dim dico As Object, cle As String, cles, nbcles As Long ' dictionnaire des machines en erreur Set dico = CreateObject("scripting.dictionary") With Sheets(FS) lifinFS = .Range(comacFS & Rows.Count).End(xlUp).Row For liFS = lidebFS To lifinFS If s = .Range(coerrFS & liFS).Value Then cle = .Range(comacFS & liFS).Value If (Not dico.exists(cle)) Then dico.Add cle, 1 End If Next liFS End With nbcles = dico.Count cles = dico.keys ' resultat With Sheets(FB) .Columns(Range(celdebFB).Column).ClearContents .Range(celdebFB).Offset(-1, 0).Value = s .Range(celdebFB).Resize(nbcles, 1) = Application.Transpose(cles) End With End Sub End Sub
Je pense ne pas trop être a coter de la plaque mais bon...
Pour le résultats s'il n'est pas en A147 ce n'est pas vraiment grave tant que le listing des machines "en erreur" est facilement visible.
Cordialement,
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
Modifié par ccm81 le 27/09/2016 à 17:38
Modifié par ccm81 le 27/09/2016 à 17:38
1. Dans ta procedure Test_Indispo
Tu supprimes tout ce qui à trait à ma procedure OK
Tu remplaces le tout par un appel à la procedure OK
Call OK
2. Dans un module général (Module 1 par exemple), tu colles ceci (j'ai souligné les lignes modifiées)
3. Je ne comprends pas ce que viennent faire ces lignes
Sub Test_Indispo()
'
' Test_Indispo Macro
'
' Touche de raccourci du clavier: Ctrl+a
'
Application.Run "PERSONAL.XLSB!Test_Indispo"
Range("AI6").Select
Application.Run "PERSONAL.XLSB!Test_Indispo"
Option Explicit
Cdlmnt
Tu supprimes tout ce qui à trait à ma procedure OK
Tu remplaces le tout par un appel à la procedure OK
Call OK
2. Dans un module général (Module 1 par exemple), tu colles ceci (j'ai souligné les lignes modifiées)
Option Explicit
' constantes à modifier selon ta configuration
' Feuille Source
Const FS = "Données_corrigées"
Const lidebFS = 2
Const comacFS = "AF"
Const coerrFS = "AJ"
' Feuille But
Const FB = "Listing-machine"
Const celdebFB = "A147"
' message recherché
Const s = "Machine non repertorier"
Public Sub OK()
Dim liFS As Long, lifinFS As Long
Dim dico As Object, cle As String, cles, nbcles As Long
' dictionnaire des machines en erreur
Set dico = CreateObject("scripting.dictionary")
With Sheets(FS)
lifinFS = .Range(comacFS & Rows.Count).End(xlUp).Row
For liFS = lidebFS To lifinFS
If s = .Range(coerrFS & liFS).Value Then
cle = .Range(comacFS & liFS).Value
If (Not dico.exists(cle)) Then dico.Add cle, 1
End If
Next liFS
End With
nbcles = dico.Count
cles = dico.keys
' resultat
With Sheets(FB)
.Range(celdebFB).Resize(1000, 1).ClearContents
.Range(celdebFB).Offset(-1, 0).Value = s
.Range(celdebFB).Resize(nbcles, 1) = Application.Transpose(cles)
End With
End Sub
3. Je ne comprends pas ce que viennent faire ces lignes
Sub Test_Indispo()
'
' Test_Indispo Macro
'
' Touche de raccourci du clavier: Ctrl+a
'
Application.Run "PERSONAL.XLSB!Test_Indispo"
Range("AI6").Select
Application.Run "PERSONAL.XLSB!Test_Indispo"
Option Explicit
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
28 sept. 2016 à 08:24
28 sept. 2016 à 08:24
C'est la première fois que je fait du VBA et j'ai un peux de mal je dois l'avouer, les lignes que tu cites ont été créer automatiquement quand j'ai essayer de créer une nouvelle macro.
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
28 sept. 2016 à 10:57
28 sept. 2016 à 10:57
Dans ce cas, le code que je t'ai proposé ci-dessus suffit. A mettre dans un module général (dans l'éditeur vba Insertion/Module pour en créer un)
Si tu veux des explications, tu dis
Cdlmnt
Si tu veux des explications, tu dis
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
28 sept. 2016 à 11:09
28 sept. 2016 à 11:09
J'ai un message d'erreur quand je lance le programme j'ai une erreur de compilation à l'endroit ou j'ai mis le "call"
Const s = "Machine non répertorié" => j'ai corriger la faute sur le fichier excel
Call OK
Dim liFS As Long, lifinFS As Long
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
28 sept. 2016 à 11:22
28 sept. 2016 à 11:22
Tu laisses tomber la partie 1 ci-dessus
Seule la partie 2 est à utiliser
depuis Option xplicit jusqu'à End Sub
Tu peux changer le nom de la procédure OK si tu veux
Public Sub OK() par Public Sub Test_Indispo()
Je te renvoies ton fichier avec la procedure OK dans le Module 1
http://www.cjoint.com/c/FICjrYsC8rq
Cdlmnt
Seule la partie 2 est à utiliser
depuis Option xplicit jusqu'à End Sub
Tu peux changer le nom de la procédure OK si tu veux
Public Sub OK() par Public Sub Test_Indispo()
Je te renvoies ton fichier avec la procedure OK dans le Module 1
http://www.cjoint.com/c/FICjrYsC8rq
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
28 sept. 2016 à 12:47
28 sept. 2016 à 12:47
Merci infiniment pour votre aide j'aurais mit des mois a faire cela,
J'ai d'autre petits projets d'amélioration mais je vais déjà essayer de comprendre en détails la macro que vous m'avez fournit et essayer par moi même. Vous risquez quand même de me recroiser ici.
J'ai d'autre petits projets d'amélioration mais je vais déjà essayer de comprendre en détails la macro que vous m'avez fournit et essayer par moi même. Vous risquez quand même de me recroiser ici.
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
28 sept. 2016 à 17:10
28 sept. 2016 à 17:10
De rien,
Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)
Cdlmnt
Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
3 oct. 2016 à 11:30
3 oct. 2016 à 11:30
Sur ton fichier sa marche impeccable mais quand j'essaye de mettre sur un autre fichier "identique" j'ai erreur d'exécution "13"
Incompatibilité de type
.Range(celdebFB).Resize(nbcles, 1) = Application.Transpose(cles)
Incompatibilité de type
.Range(celdebFB).Resize(nbcles, 1) = Application.Transpose(cles)
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
3 oct. 2016 à 12:38
3 oct. 2016 à 12:38
lorsque l'reeur se produit, passes sur la variable nbcles
Je pense qu'elle est égale à 0, ça doit encore être une histoire de "machine non repertorier" sur le fichier que j'ai
Il te suffit de mofifier le texte dans les constantes
Const s = "Machine non repertorier"
Cdlmnt
Je pense qu'elle est égale à 0, ça doit encore être une histoire de "machine non repertorier" sur le fichier que j'ai
Il te suffit de mofifier le texte dans les constantes
Const s = "Machine non repertorier"
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
3 oct. 2016 à 12:56
3 oct. 2016 à 12:56
Non j'ai bien changé le texte rechercher mais j'ai la même erreur.
Cldment,
Cldment,
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 424
Modifié par ccm81 le 3/10/2016 à 15:20
Modifié par ccm81 le 3/10/2016 à 15:20
tu ne reponds pas à ma question
lorsque l'reeur se produit, passes sur la variable nbcles
as tu aussi vérifié les valeurs des autres constantes ?
Cdlmnt
lorsque l'reeur se produit, passes sur la variable nbcles
as tu aussi vérifié les valeurs des autres constantes ?
Cdlmnt
cedrixxx
Messages postés
34
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
28 octobre 2016
1
Modifié par cedrixxx le 4/10/2016 à 08:44
Modifié par cedrixxx le 4/10/2016 à 08:44
Excuse moi, j'ai oublier d'en parler.
En effet la variable nbcles=0, et cle=""
EDIT: C'est bien moi qui n'avais pas vu un changement entre ma constante s et le message "source"
En effet la variable nbcles=0, et cle=""
EDIT: C'est bien moi qui n'avais pas vu un changement entre ma constante s et le message "source"
Modifié par cedrixxx le 27/09/2016 à 13:28
C'est exactement ce dont j'avais besoin, merci beaucoup.
Cependant je n'arrive pas à retranscrire la macro dans mon fichier, enfin j'ai une erreur persistante "erreur 1004 cette action ne peut pas être appliqué a une cellule fusionné"