![]() |
|
Forum
|
|
|||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour à toutes et à tous,
je viens encore vous demander un coup de pouce, car là je m'enlise.... ploouuf !!! je vous ai joint un extrait de mon fichier car c'est pas evident à expliquer par ecrit. Mais je vais essayer quand même . j'ai une feuil qui se nome tab dont les valeurs(codes et nom) changent quand je change de societe grace à un combobox en B1. j'aimerai quand je change de societe, pouvoir changer la liste des employés, ça c'est OK, j'y arrive et aussi changer les dates de debut et de fin de conges des employes (de AK1 à BK53) . et là je n'y arrive plus. J'ai essayé avec des formules de calcul type index, et avec des macros mais ça plante tout le temps . si quelqu'un pouvait me donner un coup de main, je l'en remercie d'avance. dj.run |
| ANNONCES | |||
|
|
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
bonjour,
j'ai regardé ton pb cet aprem (le zip avait suivi au départ...) ci dessous un listing qui transporte les dates d'une personne dans TAB (ca marche). "il ne reste plus qu'à" boucler ( 3 boucles imbriquées, svp particulièrement casse-pieds à écrire) en espèrant avoir pu t'aider à + Michel. Béziers Sub essai1() Dim congé As Range Dim lig, col, valy, valx As Byte ' Sheets("gel_center").Select Set congé = Range(Cells(3, 4), Cells(52, 11)) Sheets("TAB").Activate 'initialisations lig = 4 col = 37 valy = 1 valx = 1 'lig, col, valy, valx à implémenter avec boucles par ex pas de la colonne=3 donc valy est à 2 (pas=1) etc 'dates de début Cells(lig, col) = congé.Value(valy, valx) Cells(lig + 1, col) = congé.Value(valy, valx + 2) Cells(lig + 2, col) = congé.Value(valy, valx + 4) Cells(lig + 3, col) = congé.Value(valy, valx + 6) 'dates de fin Cells(lig, col + 1) = congé.Value(valy, valx + 1) Cells(lig + 1, col + 1) = congé.Value(valy, valx + 3) Cells(lig + 2, col + 1) = congé.Value(valy, valx + 5) Cells(lig + 3, col + 1) = congé.Value(valy, valx + 7) End Sub |
|
|
#4 (permalink) |
|
Guest
Messages: n/a
|
Bonjour à tous,
merci michel de t'etre penché sur mon probleme, je vais essayer de comprendre ton code et je vais essayer de l'adapeter à mon projet . encore merci à toi dj.run |
|
|
#6 (permalink) |
|
Guest
Messages: n/a
|
Re bonjour, Pour m’occuper ce midi au boulot, j’avais terminé la macro de transfert des dates; manque de chance ou mauvaise manip, les envois ne sont pas partis… Donc, voiciCe que j’avais fait : Dans la feuille « tab », création d’une cellule nommée « nombre » calculant le nombre de salariés de la boite (colonne AI par exemple). Dans la macro, suppression de la variable « valx » complètement inutile et remplacement de « valy » par « cptr » Ci dessous le code à copier dans vba Si tu utilises une autre solution, sois sympa de me le signaler pour mes progrès perso. Amicalement, Michel. Béziers Sub essai1() Dim congé As Range Dim cptr, nbre, lig, col As Byte 'A COMPLETER: NETTOYAGE DES CELLULES DE DATES... 'application.ScreenUpdating=False 'Sheets("gel_center").activate Set congé = Range(Cells(3, 4), Cells(52, 11)) Sheets("TAB").Activate 'initialisations nbre = Range("nombre") cptr = 1 lig = 4 col = 37 While cptr <= nbre 'lig, col, cptr, valx à implémenter avec boucles par ex pas de la colonne=3 donc cptr est à 2 (pas=1) ' dates de début Cells(lig, col) = congé.Value(cptr, 1) Cells(lig + 1, col) = congé.Value(cptr, 3) Cells(lig + 2, col) = congé.Value(cptr, 5) Cells(lig + 3, col) = congé.Value(cptr, 7) 'dates de fin Cells(lig, col + 1) = congé.Value(cptr, 2) Cells(lig + 1, col + 1) = congé.Value(cptr, 4) Cells(lig + 2, col + 1) = congé.Value(cptr, 6) Cells(lig + 3, col + 1) = congé.Value(cptr, 8) If cptr Mod 9 = 0 Then col = 37 lig = lig + 9 Else col = col + 3 End If cptr = cptr + 1 Wend End Sub |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|