Macro Colonne Ligne

rollingboy

XLDnaute Nouveau
Bonsoir le Forum,

J'ai un Classeur dans lequel j'ai plusieurs feuilles qui font un tas de choses différentes pour lesquelles j'ai réussi à obtenir ce que je voulais. Il me reste un problème à résoudre. Sur mon onglet liste j'ai un nombre variable de lignes dont les cellules contiennent des infos sur des phases de projets dont des noms de ressources avec une charge hebdomadaire de travail sur telle ou telle phase.
Les noms de ces ressources en colonne sur une plage fixe. J'aurais besoin de les mettre en ligne dans l'onglet charge si la cellule intersectant le nom et une phase contient une valeur en duplicant le nom autant de fois que nécessaire en récupérant aussi toutes les données de cette phase.

Tout ce blabla est pas forcement très clair, je vous joint donc un fichier exemple

Merci de votre aide
 

Pièces jointes

  • Projet-exemple.xls
    17 KB · Affichages: 60
  • Projet-exemple.xls
    17 KB · Affichages: 68
  • Projet-exemple.xls
    17 KB · Affichages: 68

rollingboy

XLDnaute Nouveau
Re : Macro Colonne Ligne

Bonsoir JP

En fait les données de la feuille Liste sont composées de la concaténation de tous les projets individuel. Chaque projet à ses phases et ses jalons pour lesquels on affecte des ressources (parfois plusieurs sur chaque jalon de chaque projet). Dans le fichier exemple j'ai écrit n'importe quoi désolé :eek:
Je joint le nouveau fichier
 

Pièces jointes

  • Projet-exemple.xls
    20.5 KB · Affichages: 57
  • Projet-exemple.xls
    20.5 KB · Affichages: 64
  • Projet-exemple.xls
    20.5 KB · Affichages: 64

rollingboy

XLDnaute Nouveau
Re : Macro Colonne Ligne

Bonjour JP ET TOUT LE FORUM,

D'ABORD DESOLE POUR MON DELAI DE REPONSE MAIS JE N'AI PAS ACCES A INTERNET A MON POSTE DE TRAVAIL (UNE HONTE :MAD: ) ET JE DOIS ATTENDRE DE RENTRER CHEZ MOI POUR ME CONNECTER AU FORUM.

MERCI BEAUCOUP POUR TA MACRO ÇA SEMBLE FONCTIONNER A MERVEILLE AVEC MON FICHIER DE PROD.
PAR CONTRE CERTAINS DETAILS SONT UN PEU OBSCURS POUR MOI.
JE VAIS NOTER ETAPE PAR ETAPE CE QUE JE COMPREND:

Code:
FOR I = 9 TO .RANGE("IV" & LIDEP1).END(XLTOLEFT).COLUMN
    COL1 = COLONNELCENAX(I)
    DATA1 = .RANGE(COL1 & LIDEP1)  ' NOM

ICI ON PARCOURS LES COLONNES DE I A IV ET ON MET DANS LA VARIABLE DATA1 LE CONTENU DE LA CELLULE (COL1 & LIGNE 1)

Code:
J = .RANGE(COL1 & "65536").END(XLUP).ROW
        IF J > 1 THEN
ICI ON PARCOURT UNE COLONNE DONNEE DE LA DERNIERE A LA PREMIERE LIGNE ET SI ON EST AU MOINS A LIGNE 2 ALORS

Code:
FOR EACH CELLULE IN .RANGE(COL1 & (LIDEP1 + 1) & ":" & COL1 & J)
            IF CELLULE.VALUE <> "" THEN

POUR CHAQUE CELLULE DE LA PLAGE ("COL1LIGNE2 : COLFINLIGNEJ") SI ELLE EST NON VIDE ALORS

Code:
J = SHEETS(NOMFEUILLE2).RANGE("A65536").END(XLUP).ROW + 1
                SHEETS(NOMFEUILLE2).CELLS(J, 1) = DATA1

ON PARCOURT LA COLONNE A JUSQU'A LA PREMIERE LIGNE NON VIDE ET ON COLLE LA VALEUR DE DATA1

CE J A T-IL UN RAPPORT AVEC CELUI DU DESSUS?

Code:
 For i1 = 2 To 9
                    Sheets(nomfeuille2).Cells(j, i1) = .Cells(cellule.Row, i1 - 1)
                Next i1
                    Sheets(nomfeuille2).Cells(j, 9) = cellule.Value

Pour i1 allant de 2 à 9 (pour parcourir les 8 colonnes de données)
La valeur de la cellule de ligne j et de colonne i1 de la feuille 2 = valeur de la cellule de la feuille 1 dont la ligne est celle de la cellule "cellule" et la colonne (i1 -1). Puis on colle la valeur de la cellule "cellule" dans la colonne 9.

Finalement en décortiquant bien, ce n'est pas si obscur queçà.

Merci encore pour tout

Rollingboy
 

jp14

XLDnaute Barbatruc
Re : Macro Colonne Ligne

Bonjour

Ok pour l'explication.

SHEETS(NOMFEUILLE2).RANGE("A65536").END(XLUP).ROW cette fonction donne le numéro de la dernière ligne écrite dans une colonne. Cela évite de traiter toutes les cellules d'une colonne et ce fait diminue le temps de traitement.

Dans une procédure on trouve des variables qui doivent avoir la même valeur lors d'un cycle, d'autre comme j qui une fois lue on peut l'utiliser avec une autre valeur : écriture lecture, écriture, lecture.

JP
 

Discussions similaires

Réponses
12
Affichages
198

Statistiques des forums

Discussions
311 729
Messages
2 081 971
Membres
101 852
dernier inscrit
dthi16088