Toutes mes réponses sur les forums
-
AuteurMessages
-
Lionel
ParticipantMerci, Kim. (=^_^=)
C’était le petit coup de pouce qu’il me fallait. Du coup, tout le reste (dont je n’avais pas parlé) s’est débloqué par magie.
Lionel20 janvier 2021 à 10 h 04 min en réponse à : DISTINCTCOUNT et FILTER (deux critères sur une seule colonne) #86246Lionel
ParticipantBon, je viens de faire une comparaison avec Excel et le TCD me donne le même résultat. Donc, je suppose que c’est correct.
Si quelqu’un voit une énormité, merci de me le dire.20 janvier 2021 à 10 h 00 min en réponse à : DISTINCTCOUNT et FILTER (deux critères sur une seule colonne) #86245Lionel
ParticipantDans mes essais, j’ai tenté mais je ne suis pas certain du résultat.
Child_12_17 = FORMAT( CALCULATE( DISTINCTCOUNT(BI_Data[CHILD]); FILTER(BI_Data;BI_Data[AGE]>=12 && BI_Data[AGE]<=17)) ;"# ### ##0")
16 novembre 2020 à 0 h 17 min en réponse à : Power Query – Données ne commençant pas à la ligne 1 #83987Lionel
ParticipantBon, un éclair ce matin sur la procédure et voilà pour mémoire:
let MaFonction=(FolderPath,SheetName)=> let Source = Excel.Workbook(File.Contents(FolderPath), null, true), Page2_2_Sheet = Source{[Item=SheetName,Kind="Sheet"]}[Data], #"Type modifié" = Table.TransformColumnTypes(Page2_2_Sheet,{{"Column1", type any}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}, {"Column9", type text}, {"Column10", type text}, {"Column11", type text}, {"Column12", type text}, {"Column13", type text}, {"Column14", type any}, {"Column15", type any}, {"Column16", type any}, {"Column17", type any}, {"Column18", type any}, {"Column19", type any}, {"Column20", type text}, {"Column21", type text}, {"Column22", type any}, {"Column23", type text}, {"Column24", type text}}), #"Premières lignes supprimées" = Table.Skip(#"Type modifié",6), #"En-têtes promus" = Table.PromoteHeaders(#"Premières lignes supprimées", [PromoteAllScalars=true]) in #"En-têtes promus" in MaFonction
Merci la Grenouille.
13 novembre 2020 à 8 h 08 min en réponse à : Power Query – Données ne commençant pas à la ligne 1 #83921Lionel
ParticipantLe fichier ici est certainement mieux car il reprend la méthode d’importation d’un folder.
Je viens de voir Table.Skip qui pourrait être une solution mais je ne sais pas si c’est correct ni comment faire à ce stade.
Attachments:
You must be logged in to view attached files.Lionel
ParticipantUn très grand merci, Mme Marchand !
Promis, je me le tatoue ! 😉
Lionel.Lionel
ParticipantHello,
Voici ce que j’utilise
.Range("R" & li).Value = WorksheetFunction.VLookup(.Range("D" & li).Value, Sheets("List File Manager").Range("B:G"), 4, False)
.Range(“R” & li).Value = cellule où je mets la valeur trouvée
.Range(“D” & li).Value = valeur cherchée
Sheets(“List File Manager”).Range(“B:G”) = zone de recherche
4 = colonne de récupérationUn peu d’info : https://docs.microsoft.com/en-us/office/vba/api/excel.worksheetfunction.vlookup
Lionel
ParticipantHello Pimpin,
Tu parles dans le titre de ton post : tri de données sur facture. Mais ce que tu envoies ni ressemble guère. Est-ce un autre sujet surtout en voyant le fichier que tu joins. J’ai un peu de mal.
Ensuite, nous sommes en présence d’un grand péché : sur un même onglet, faire de l’encodage, de la vérification de données et en plus de la visualisation. Tu y gagnerais en créant un onglet pour l’encodage et la vérification avant validation, un onglet pour garder ta db, un onglet pour la visualisation. Sinon, cela va vite devenir ingérable.Lionel
ParticipantJe vois que tu as déjà oublié un guillemet. Le plus simple est de faire un copier-coller du code et ensuite, de modifier en fonction de tes données ; colonne, ligne…
Private Sub UserForm_Initialize() Dim j As Integer 'Récupère les données de la colonne A... For j = 2 To Sheets("Feuil1").Range("A1").End(xlDown).Row ComboBox1 = Sheets("Feuil1").Range("A" & j) '...et filtre les doublons If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("A" & j) Next j End Sub
Lionel
ParticipantSalut,
Pour passer à la ligne, il faut utiliser Shift + Enter.Pour la mise en forme, ce n’est pas possible. La TextBox ne peut avoir qu’une seule mise en forme.
Lionel
ParticipantSalut,
Pour cela tu utilises une Textbox et tu définis la propriété Multiline à true.Lionel
ParticipantSalut Pimpin,
Ce n’est pas un Combobox que tu veux remplir. Voici un code pour le remplir avec les données de la colonnes A en évitant les doublons.Private Sub UserForm_Initialize() Dim j As Integer 'Récupère les données de la colonne A... For j = 2 To Sheets("Feuil1").Range("A65536").End(xlUp).Row ComboBox1 = Sheets("Feuil1").Range("A" & j) '...et filtre les doublons If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("A" & j) Next j End Sub
Pour te perfectionner voici un peu de lecture : https://silkyroad.developpez.com/VBA/ControlesUserForm/#LI
Attachments:
You must be logged in to view attached files.Lionel
ParticipantRe- Pimpin,
En partant de : En colonne A (Feuil1), j’ai des références
Voici un code qui réagit quand tu cliques sur le CommandButtonPrivate Sub CommandButton1_Click() Dim x As Range If TextBox1.Value <> "" Then Set x = Range("A:A").Find(TextBox1, , xlValues, xlWhole, , , False) If Not x Is Nothing Then MsgBox "Ce code est déjà en : " & x.Address & vbLf & "Saisir un nouveau code Référence" TextBox1 = "" Cancel = True Else MsgBox "Ce code n'existe pas." End If End If End Sub
Attachments:
You must be logged in to view attached files.Lionel
ParticipantSalut Pimpin,
La question n’est pas assez précise (c’est vrai qu’un petit fichier aide). Nous devons savoir comment tes données sont situées sur ta feuille, si tu utilises un tableau structuré (ce qui ne semble pas le cas), comment tu veux que le tri s’effectue, à quel moment, si tu utilises une autre feuille pour faire de l’encodage…
Je te propose ceci :
1. Mes données sont dans un tableau structure ‘Tableau1’
2. Mes données sont dans les colonnes A – B – C – D.
3. Le code réagit quand tu modifies la colonne D.Private Sub WorkSheet_Change(ByVal Target As Range) If Target.Column = 4 Then NomTableau = "Tableau1" Range(NomTableau).Sort key1:=Range(NomTableau & "[REFERENCE]"), Header:=xlYes, _ Order1:=xlAscending End If End Sub
Attachments:
You must be logged in to view attached files. -
AuteurMessages