suite du travail de Hervé

V

Vita

Guest
Bonjour le forum,
Le classeur que je vais envoyer fait suite au bon travail de Hervé.
Au debut,il n'y a qu'un seul mois (mois de janvier) mais quand j'ai rajouté les autres mois,le programme affiche toujours une erreur.
je vous laisse voir le fichier et j'attends avec impatience vos solutions.
Merci d'avance [file name=vitav3.zip size=35203]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/vitav3.zip[/file]
 

Pièces jointes

  • vitav3.zip
    34.4 KB · Affichages: 35

Celeda

XLDnaute Barbatruc
Bonjour,


Hervé par çi Hervé par là!!!

non Vita : tu aurais du soit rester sur le même fil

et surtout ne pas personnaliser les fils :pinch:

Cela ne se fait pas

Il faut s'en tenir à des titres généraux et cela pourra aider la base de Recherche (et celui-là qu'est-ce que tu en Fais - si Recherche est malmené, jamais il ne pourra aider les autres!! ;)

Imagine que tout le monde fasse

Gibson et son vba

Monique et sa formule

Chris et son TCD

Dan et sa panthère

DidierMDF et ses yeux bleus

bref.....

d'accord on est dans un vrai Cirque mais quand même,

soyons disciplinés

Celeda
 

Gibson94

Nous a quitté
Repose en paix
Salut le fil,

Eh Celeda , mon VBA est très, très basique, il vaut mieux pour tout le monde qu'il reste très très discret sur le forum...lol

Sais-tu qu'une de mes musiques s'appelle 'Les noces de Celeda' ?, Brigitte l'a déjà écoutée...
 

Celeda

XLDnaute Barbatruc
Bonjour,



oh non Hervé, je t'aime !!!! reviens reviens

je ne pourrais jamais me passer de toi

c'est pas ma faute, c'est la loi

sinon je risque d'y laisser mes liens

d'amitié et mon cœur se brisera

en mille morceaux

et n'aurais-je assez de mots

pour t'envelopper de mon aura

et de demander

de me pardonner!!!




Pascal, tu as raison et j'ai honte

j'ai oublié aussi dans la rubrique :

Les poils de _Thierry

Le Ti vélo dans la tête

Les jolies mains de MichelXLD

Les Grandspinceaux de JM

ect..... :) :) :) :) :) :) :) :)



Comment cela Gibson, tu as écrit une mélodie ?

Ben je devrais l'écouter non ?

On doit pouvoir se faire un yahoo.messenger et tu me
la feras écouter non ?
Je te contacte directement pour ne pas encombre le fil
(j'en ai déjà assez fait des bêtises sur ce fil!!)


Vita : euh on est tous forts !!! C'est vite dit

on fait semblant !!! et pis il manque Robert!!! :)

Bon j'espère que tu auras une réponse réactive ton ancien
fil, on ne sait jamais

Celeda
 

Hervé

XLDnaute Barbatruc
bonsoir tout le monde

Vita, en pièce jointe, ton fichier modifié.

J'ai ajouté une combobox pour pouvoir sélectionner le mois, sinon je vois pas comment tu aurais fait.

salut


[file name=vitav4.zip size=34840]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/vitav4.zip[/file]
 

Pièces jointes

  • vitav4.zip
    34 KB · Affichages: 43
V

vita

Guest
Re,
Dans le programme que t'as fourni Hervé,je suis un peu perdu dans le sous-programme suivant:

Private Sub ChoixPersonne_Click()
Dim i As Byte, j As Byte, x As Byte, k As Byte
Dim tablopersonne()

For i = 1 To UBound(tablo)
If tablo(i, 1) = ChoixPersonne Then
Exit For
End If
Next i

ReDim tablopersonne(1 To 4, 1 To UBound(tablo, 2))
x = 2
For j = i To i + 2
For k = 1 To UBound(tablo, 2)
tablopersonne(1, k) = tablo(1, k)
tablopersonne(x, k) = tablo(j, k)
Next k
x = x + 1
Next j

RechercheTable.Clear
RechercheTable.List = tablopersonne

End Sub

Ainsi peux-tu m'explique brièvement la logique...
Merci d'avance
 
V

vita

Guest
Bonjour Hervé,le forum,
J'ai completé les feuilles avec tous les mois de l'année mais quelquefois,une erreur s'affiche après avoir selectionné une personne.
Après deboguage,l'erreur se trouve apparemment au niveau de
tablopersonne(x, k) = tablo(j, k) mais j'ai pas encore la solution.
Est-ce que tu peux voir un coup d'oeil?
Je te joint le fichier.
Merci d'avance
[file name=vitav4_lundi.zip size=42253]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/vitav4_lundi.zip[/file]
 

Pièces jointes

  • vitav4_lundi.zip
    41.3 KB · Affichages: 26

Hervé

XLDnaute Barbatruc
Bonjour vita

Je n'avais pas vu ton post du 29/07 désolé.

Pour t'expliquer rapidement :

Comme ta listbox comprend plus de 10 colonnes, on est obligé de passer par des tableaux dynamiques pour pouvoir la remplir.

Lors de l'initialize du userform on crée un tableau des données que l'on appelle Tablo.

puis on boucle sur chaque ligne du tableau en comparant les données de la premiere colonne avec le choix fait dans la combobox :

For i = 1 To UBound(tablo)
If tablo(i, 1) = ChoixPersonne Then
Exit For
End If
Next i

Lorsque la données est trouvé on sort de la boucle(exit for), en gardant en mémoire que la ligne se trouve dans la variable I

Puis on remplit un nouveau tableau dynamique (tablopersonne) en renvoyant dans celui-ci toutes les informations que l'on à trouvées dans la ligne i du tableau de base (tablo).

ReDim tablopersonne(1 To 4, 1 To UBound(tablo, 2))
x = 2
For j = i To i + 2
For k = 1 To UBound(tablo, 2)
tablopersonne(1, k) = tablo(1, k)
tablopersonne(x, k) = tablo(j, k)
Next k
x = x + 1
Next j

ensuite il suffit de vider la listbox et de la remplir avec le nouveau tableau (tablopersonne) :

RechercheTable.Clear
RechercheTable.List = tablopersonne

Pour ton souci d'aujourd'hui, je ne suis pas arrivé à reproduire le bug, mais je pense que ton souci vient du fait des mois variant de 28 à 31 jours.

je te propose donc, de modifier la macro initlistbox comme suit et de refaire des tests :

Public Sub initlistbox()
Dim dercolonne As Byte

With ws
    dercolonne = .Range('IV4').End(xlToLeft).Columns + 1
    tablo = .Range(.Cells(4, 1), .Cells(34, dercolonne))
End With

With RechercheTable
    .Clear
    .ColumnCount = 32
    .ColumnWidths = '45;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20'
    .List = tablo
End With

End Sub

salut

Message édité par: Hervé, à: 01/08/2005 11:09
 
V

vita

Guest
Salut Hervé,bonjour le forum,
J'ai rencontré une erreur après avoir fait un double-click sur un enregistrement dans le listbox.
Par exemple,après avoir choisi un collaborateur,son emploi du temps s'affiche dans le listbox .Après un double-click sur cet enregistrement,l'erreur suivant se produit:

Erreur d'execution'-214 741 78 48 (80010108)'
Erreur automation
L'objet invoqué s'est deconnecté du client

Après cette erreur,excel tente de recuperer tout le travail.
A quoi est dûe cette erreur Hervé?
Merci d'avance
 

Hervé

XLDnaute Barbatruc
Bonjour vita, le forum

Je ne suis pas arrivé à reproduire ce bug. :huh:

Le seul bug que j'ai trouvé c'est une problème d'indice dans le tableau.

Problème dû au fait que tu as rajouté 'ITC' en cellule A4 de tes plannings, et comme le code cherchait les cellules vides en ligne 4 pour trouver le point de départ, celui-ci commencait en colonne 1 au lieu de la colonne 2.

Par contre pour ton souci de bug, travailles-tu sur le meme fichier que celui que tu met en pièce jointe, ou celui-ci n'est qu'un modèle de travail et ensuite tu transfères les codes dans ton fichier principal ?

En tout cas je te met en pièce jointe une version qui ne buggue pas chez moi.

sinon soit plus clair dans tes explications, du style : je choisis tel nom dans tel combobox, puis je double click sur tel nom dans la listbox.

en attendant de tes nouvelles....

salut


[file name=vitav5.zip size=46144]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/vitav5.zip[/file]
 

Pièces jointes

  • vitav5.zip
    45.1 KB · Affichages: 48

Discussions similaires

Statistiques des forums

Discussions
312 415
Messages
2 088 240
Membres
103 779
dernier inscrit
FrancoisB2