Ventilation de valeur dans un tableau sans doublon

riccardovegas

XLDnaute Junior
Bonjour,
je travaille sur un nouveau projet :

la répartition de conteneur sur des wagon.

ETAPE1
J'ai une liste de wagon contenant X wagons
J'ai une liste de conteneur

je dois repartir dans chaque wagon 4 conteneur maximum
un conteneur ne peut pas être répété deux fois

fichier joint
 
Dernière édition:

klin89

XLDnaute Accro
Re : Ventilation de valeur dans un tableau sans doublon

Bonjour le forum, :)

Pour t'aider :
VB:
Option Explicit

Sub Répartition()
Dim a, b(), i As Long, n As Long, j As Long
Const Interval As Long = 4
    Application.ScreenUpdating = False
    With Sheets("Feuil1")
        a = .Range("a1", Range("a" & Rows.Count).End(xlUp)).Value
        ReDim b(1 To UBound(a, 1) \ Interval + 1, 1 To Interval)
        For i = 1 To UBound(a, 1) Step Interval
            n = n + 1
            For j = 1 To Interval
                If i + j - 1 > UBound(a, 1) Then Exit For
                b(n, j) = a(i + j - 1, 1)
            Next
        Next
        .Cells(1, "C").Resize(UBound(b, 1)).Value = Application.Index(b, 0, 1)
        .Cells(1, "E").Resize(UBound(b, 1)).Value = Application.Index(b, 0, 2)
        .Cells(1, "G").Resize(UBound(b, 1)).Value = Application.Index(b, 0, 3)
        .Cells(1, "I").Resize(UBound(b, 1)).Value = Application.Index(b, 0, 4)
        'la même chose
'        j = 2
'        For i = 1 To UBound(b, 2)
'            .Cells(1, i + j).Resize(UBound(b, 1)).Value = _
'            Application.Index(b, 0, i)
'            j = j + 1
'        Next
    End With
    Application.ScreenUpdating = True
End Sub
klin89
 

Pièces jointes

  • riccardovegas.xls
    32 KB · Affichages: 26
  • riccardovegas.xls
    32 KB · Affichages: 37
  • riccardovegas.xls
    32 KB · Affichages: 35

klin89

XLDnaute Accro
Re : Ventilation de valeur dans un tableau sans doublon

Re riccardovegas,

En fait, je me suis planté, c'est mieux comme ceci :
Tu fixes la valeur de la constante Decoupe pour obtenir le nombre de conteneurs souhaité par wagon.
VB:
Option Explicit

Sub Répartition1()
Dim a, b(), i As Long, n As Long, j As Long
Const Decoupe As Long = 4
    Application.ScreenUpdating = False
    With Sheets("Feuil1")
        a = .Range("a1", Range("a" & Rows.Count).End(xlUp)).Value
        ReDim b(1 To UBound(a, 1) \ Decoupe + 1, 1 To Decoupe)
        For i = 1 To UBound(a, 1) Step Decoupe
            n = n + 1
            For j = 1 To Decoupe
                If i + j - 1 > UBound(a, 1) Then Exit For
                b(n, j) = a(i + j - 1, 1)
            Next
        Next
        j = 2
        For i = 1 To UBound(b, 1)
            .Cells(1, i + j).Resize(UBound(b, 2)).Value = _
           Application.Transpose(Application.Index(b, i, 0))
            j = j + 1
        Next
    End With
    Application.ScreenUpdating = True
End Sub
klin89
 

Pièces jointes

  • riccardovegas.xls
    32 KB · Affichages: 28
  • riccardovegas.xls
    32 KB · Affichages: 44
  • riccardovegas.xls
    32 KB · Affichages: 42
Dernière édition:

riccardovegas

XLDnaute Junior
Re : Ventilation de valeur dans un tableau sans doublon

Bonjour,
Ce n'est pas vraiment ce que je recherche en fait.
Étape 1
VOIR FICHIER IMPORT COMPLET

comment puis-je numéroter la colonne F avec macro
par exemple en insérant après la colonne M une numérotation automatique
qui compte les conteneur

Etape 2
VOIR IMPORT ESSAI20072015

J'ai mis de colonne S à W (caché) des recherches de valeurs que je cumule en X et Y

de E à H j'inscris le numéro simplifié du conteneur, s'il est déjà utilisé il est coloré.
-1 comment faire pour ne pas pouvoir noté un autre num simplifié s'il est déjà utilisé?
-2 sachant que le fichier au départ n'a pas les colonne E à H et colonne L (cf fichier IMPORT complet).


ETAPE3

Le but est de ventiller les conteneur de la colonne J dans des wagon (B) sachant qu'on ne peut pas mettre plus de 4 conteneur par wagon pour des raisons techniques.

J'ai ajouté le fichier import complet modifié pour voir ce que l'on devrai trouver
je cherche a faire la même chose par macro et non par formule



merci
 

Pièces jointes

  • IMPORT essai20072015.xlsx
    28.2 KB · Affichages: 16
  • IMPORT COMPLET 13-07.xlsx
    20.8 KB · Affichages: 23
  • IMPORT COMPLET 13-07 modifié.xlsx
    31.5 KB · Affichages: 14
Dernière édition:

Discussions similaires

Réponses
4
Affichages
263
Réponses
10
Affichages
240

Statistiques des forums

Discussions
312 396
Messages
2 088 054
Membres
103 709
dernier inscrit
FrrankX