Combinaisons pour les membres en réunion (Microsoft Excel)
Bob a une feuille de calcul avec les noms des membres sur le côté gauche et les mois de l’année en haut. Dans chaque cellule de la grille, il entre les dates auxquelles ont lieu les réunions auxquelles le membre a participé. Bob cherche un moyen de dire en un coup d’œil qui n’a pas rencontré qui.
Une solution à ce problème peut être abordée de plusieurs manières. Si la conception de votre table est flexible, vous pouvez «simplifier» les choses en modifiant la disposition de votre table. Au lieu de mettre des mois dans les colonnes, vous pouvez simplement faire en sorte que chaque colonne soit une date de réunion.
Ensuite, chaque cellule peut contenir une sorte d’indicateur (un nombre ou un caractère) qui indique la personne qui a assisté à la réunion à cette date particulière. Il serait relativement facile de déterminer qui n’a pas rencontré qui:
-
Choisissez le membre clé, celui que vous souhaitez vérifier, et déplacez-le en haut de votre tableau de données.
-
Triez le tableau de données horizontalement sur la ligne du membre clé, de sorte que toutes les réunions auxquelles le membre clé a participé se trouvent dans les colonnes les plus à gauche.
-
Trier tout le monde sauf le membre clé verticalement aux trois premières dates de réunion. Tous ceux qui ont rencontré le membre clé lors de ces trois réunions se trouvent désormais en haut du tableau de données, juste en dessous du membre clé.
-
Descendez le tableau de données et sélectionnez toutes les personnes qui n’ont pas encore rencontré le membre clé et triez les trois prochaines dates de réunion.
-
Répétez les étapes 3 et 4 jusqu’à ce que toutes les dates de réunion aient été triées.
-
Tous ceux qui restent en bas du tableau de données (ceux non sélectionnés aux étapes 3 et 4) n’ont jamais rencontré le membre clé.
Si vous ne pouvez pas modifier le format de votre tableau, une solution macro est nécessaire. Il existe de nombreuses approches qui pourraient être utilisées dans une macro, mais la suivante est peut-être la plus directe:
Sub PeopleNotMet() Dim rTable As Range Dim rOutput As Range Dim iCols As Integer Dim iCol As Integer Dim iRows As Integer Dim iRow As Integer Dim iCompRow As Integer Dim sNotMet As String Dim sMet As String Set rTable = Worksheets("Sheet1").Range("A1").CurrentRegion Set rOutput = Worksheets("Sheet2").Range("a1") sNotMet = "X" sMet = "" Application.ScreenUpdating = False With rTable iRows = .Rows.Count iCols = .Columns.Count .Columns(1).Copy With rOutput .PasteSpecial .PasteSpecial Transpose:=True Application.CutCopyMode = False Range(.Offset(1, 1), .Offset(iRows - 1, _ iRows - 1)).Value = sNotMet Range(.Offset(1, 1), .Offset(iRows - 1, _ iRows - 1)).HorizontalAlignment = xlCenter End With End With With rTable.Cells(1) For iRow = 1 To iRows - 1 For iCol = 1 To iCols - 1 For iCompRow = 1 To iRows - 1 If Not (IsEmpty(.Offset(iRow, iCol))) Then If Not (IsEmpty(.Offset(iCompRow, iCol))) Then If .Offset(iRow, iCol).Value = _ .Offset(iCompRow, iCol).Value Then _ rOutput.Offset(iRow, iCompRow).Value = sMet End If End If Next Next Next End With Set rTable = Nothing Set rOutput = Nothing Application.ScreenUpdating = True End Sub
Cette macro suppose plusieurs choses. Tout d’abord, il suppose que la table de données d’origine de Bob se trouve sur la feuille Sheet1, à partir de la cellule A1. Deuxièmement, il suppose que la table «qui n’a pas rencontré qui» doit être sur la feuille Sheet2, en commençant à la cellule A1. Si ces hypothèses sont correctes, lorsque vous exécutez la macro, la table créée sur Sheet2 affiche les noms sur le côté gauche et les noms en haut. Les cellules qui se croisent ne contiendront rien (ce qui signifie que les gens se sont rencontrés) ou un X majuscule (ce qui signifie qu’ils ne se sont pas rencontrés).
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (248) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:
lien: / excel-Combinations_for_Members_in_Meetings [Combinaisons pour les membres dans les réunions]
.