Obtention d'un array à partir de 2 autres (VBA)

chatounet

XLDnaute Nouveau
Bonjour à vous,

Mon problème est le suivant :
  • J'ai une liste de dates array w() contenant toutes les dates d'un mois,
  • une autre liste de dates array y() contenant certaines dates du même mois
Je souhaite obtenir un array formé des dates de ce mois différentes de y() (Pour faire court : w() - y())

Merci pour votre attention
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,

ce que j'ai compris

Code:
Sub essai()
  '-- simulation w() et y()
  Dim w(1 To 31), y(1 To 3)
  m = 1: an = 2018
  For j = 1 To 31
    w(j) = DateSerial(an, m, j)
  Next j
  y(1) = DateSerial(2018, 1, 2)
  y(2) = DateSerial(2018, 1, 5)
  y(3) = DateSerial(2018, 1, 8)
  '--- différence z=w()-y()
  Set d1 = CreateObject("scripting.dictionary")
  For Each c In y(): d1(c) = "": Next c
   Set d2 = CreateObject("scripting.dictionary")
   For Each c In w
     If Not d1.exists(c) Then d2(c) = ""
   Next c
   Z = d2.keys
   [A1].Resize(, UBound(Z)) = Z
End Sub

Boisgontier
 

Pièces jointes

  • Classeur1.xls
    35.5 KB · Affichages: 18

chatounet

XLDnaute Nouveau
Merci encore J. Boisgontier
Le résultat de votre proposition n'est pas ce que j'attendais : des 31 jour de janvier (dans mon cas W) il faudrait ôter les éléments de Y :
09/01/2017
11/01/2017
12/01/2017
13/01/2017
16/01/2017
17/01/2017
18/01/2017
19/01/2017
26/01/2017
27/01/2017
30/01/2017
31/01/2017
ainsi j'obtiendrais :
01/01/17
02/01/17
03/01/17
04/01/17
05/01/17
06/01/17
07/01/17
08/01/17
10/01/17
14/01/17
15/01/17
20/01/17
21/01/17
22/01/17
23/01/17
24/01/17
25/01/17
28/01/17
29/01/17
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,

Sous forme de fonction

Code:
Function ComplementArray(a, b)
  Set d1 = CreateObject("scripting.dictionary")
  For Each c In b: d1(c) = "": Next c
   Set d2 = CreateObject("scripting.dictionary")
   For Each c In a
     If Not d1.exists(c) Then d2(c) = ""
   Next c
   ComplementArray = d2.keys
End Function

Boisgontier
 

Pièces jointes

  • ComplementArray.xls
    37.5 KB · Affichages: 20

Discussions similaires

Statistiques des forums

Discussions
312 225
Messages
2 086 411
Membres
103 201
dernier inscrit
centrale vet