classement client sur agenda

alessandro

XLDnaute Occasionnel
Bonjour à tous et merci d'avance pour les personnes qui prendront du temps pour m'expliquer !

une question simple. je cherche à faire le classement d'une agenda. j'ai téléchargé un modèle, mais je souhaite le remplir avec mes noms (enfin bref). Surtout j'aimerais comprendre un peu plus, j'ai déjà utilisé un pe de vba et rang mais là j'aimerais comprendre le pourquoi du comment dans mon cas.

L'idée est de faire un classement qui se met à jour en fonction du remplissage du tableau des résultats.

je voudrai mettre pour semaine e jour mes clients
piece jounte

merci
Alessandro
 

Pièces jointes

  • agenda (2).xls
    132 KB · Affichages: 57
  • agenda (2).xls
    132 KB · Affichages: 57
  • agenda (2).xls
    120.5 KB · Affichages: 48
  • agenda (2).xls
    120.5 KB · Affichages: 53
Dernière édition:

JBARBE

XLDnaute Barbatruc
Re : classement client sur agenda

Bonjour à tous,

Je ne peux pas dire que ma macro est parfaite, mais elle a été handicapée par les séparations des semaines !

En cliquant sur le bouton GO !

bonne journée !
 

Pièces jointes

  • agenda 2.xls
    169.5 KB · Affichages: 44

JBARBE

XLDnaute Barbatruc
Re : classement client sur agenda

Bon maintenant la macro c'est considérablement allégée et sans être tributaire des espaces entre semaines !

Code:
Option Explicit

Sub essai()
Dim i As Long
Dim j As Long
Dim k As Integer
Dim l As Integer
Dim p As Integer
Application.ScreenUpdating = False ' Ecran figé
With Sheets("agenda")
.Range("B3:P20").ClearContents ' suppression de la saisie des cellules
.Range("B22:P39").ClearContents
.Range("B41:P58").ClearContents
.Range("B60:P77").ClearContents
.Range("B79:P96").ClearContents
.Range("B98:P115").ClearContents
.Range("B117:P134").ClearContents
.Range("B136:P153").ClearContents
.Range("B155:P172").ClearContents
.Range("B174:P191").ClearContents
.Range("B193:P210").ClearContents
.Range("B212:P229").ClearContents
.Range("B231:P248").ClearContents
.Range("B250:P267").ClearContents
.Range("B269:P286").ClearContents
.Range("B288:P305").ClearContents
End With
With Sheets("app")
 For i = 2 To 65536 ' ligne de 2 à 65536
  If .Cells(i, 1) = "" Then Exit Sub ' si la cellule colonne 1 de la feuille app est vide alors sortie macro
  For j = 2 To 1008 Step 19 ' boucle de 2 à 1008 par pas de 19
  If .Cells(i, 3) = Sheets("agenda").Cells(j, 1) Then ' si la colonne C est égale à la colonne 1 de la feuille agenda alors
  
   For k = 2 To 14 Step 3 ' boucle de 2 à 14
    If .Cells(i, 1) = Sheets("agenda").Cells(2, k) Then ' si la colonne 1 feuille app est égale à ligne 2 et colonne de la feuille agenda alors

     For l = j + 1 To j + 18 ' boucle de 3 à 20
     If Sheets("agenda").Cells(l, k) = "" Then ' si la cellule du lundi ou mardi etc .... est vide alors
      Sheets("agenda").Cells(l, k) = .Cells(i, 2) ' la cellule comprend le client de la feuille app
      Exit For ' sortie for
      End If ' fin si
     Next l
     
    End If
   Next k
   
   Exit For
   End If
  Next j
 Next i
End With
Application.ScreenUpdating = True

End Sub

bonne journée à tous !
 

Pièces jointes

  • agenda 3.xls
    163 KB · Affichages: 39
  • agenda 3.xls
    163 KB · Affichages: 41
Dernière édition:

JBARBE

XLDnaute Barbatruc
Re : classement client sur agenda

Petit problèmes avec la reconnaissance des mots !

De fait, dans la feuille " app ", l'inscription des jours de semaines se fait par une sélection ( plus pratique et recommandée)!

Cette sélection se fait jusqu’à la ligne 5000 ( mais l'on peut prolonger)

Pour cela faire :
- sélectionner la colonne A de 5001 à .........
- données
- validations des données
- autoriser > liste
-source > =$G$2:$G$6

dans la colonne A non pourvue ( au-delà de la ligne 5000) !

bonne nuit !
 

Pièces jointes

  • agenda 3A.xls
    245.5 KB · Affichages: 50
  • agenda 3A.xls
    245.5 KB · Affichages: 50
Dernière édition:

JBARBE

XLDnaute Barbatruc
Re : classement client sur agenda

J'ai volontairement augmenté le nombre de ligne dans la feuille " agenda" afin de ne pas avoir de problème d'enregistrement !

bonne journée
 

Pièces jointes

  • agenda 3B.xls
    308.5 KB · Affichages: 67

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 696
Membres
103 642
dernier inscrit
nolem