Question : Transposer les données dans le MS Access ou exceler

J'ai un bilan d'Excel qui a des codes de fonds comme titres de rangée, et des nombres de client comme en-têtes de colonne.  Chaque client qui a des fonds correspondants a un x dans le domaine sous la rangée des fonds (voir l'exemple ci-joint - énumérer l'étiquette). Je dois créer une liste de ce bilan qui montre chaque client et fonds énumérés (étiquette de résultats).  Est-ce que n'importe qui sait je peux accomplir ceci dans l'accès ou exceler ?

Thanks.
class= " lastRow de
>Attachments de " nom " de class= de
class= " valeur " de
>

de " description " de class= de
le class= de
de >
class= de

Réponse : Transposer les données dans le MS Access ou exceler

Le code ci-dessous semble fonctionner dans Excel.

Ceci peut être fait dans l'accès, mais pas en tant que commodément, car il implique une question très longue des syndicats (ou le code de VBA à fondamentalement le faire pour vous).
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
Substrater TransposeData ()
    
    Obscurcir LastR en tant que longtemps, LastC en tant que longtemps
    Obscurcir l'arr comme variante
    Obscurcir DestR en tant que longtemps
    Obscurcir CounterR en tant que longtemps, CounterC en tant que longtemps
    
    Avec l'application
        .ScreenUpdating = faux
        . Calcul = xlCalculationAutomatic
    Extrémité avec
    
    Avec ThisWorkbook.Worksheets (« liste »)
        LastR =. Cellules (. Rows.Count, « a »). Extrémité (xlUp). Rangée
        LastC =. Cellules (1. Columns.Count). Extrémité (xlToLeft). Colonne
        arr =. Gamme (. Cellules (LastR, « a »). Cellules (1, LastC)). Valeur
    Extrémité avec
    
    Worksheets.Add
    DestR = 1
    
    Avec ActiveSheet
        . Gamme (« a1 : c1 ») = rangée (« client », « code », « Fund#")
        Pour CounterR = 2 à UBound (arr, 1)
            Pour CounterC = 3 à UBound (arr, 2)
                Si équilibre (arr (CounterR, CounterC))  <> "" Alors
                    DestR = DestR + 1
                    . Cellules (DestR, 1) = arr (1, CounterC)
                    . Cellules (DestR, 2) = arr (CounterR, 1)
                    . Cellules (DestR, 3) = arr (CounterR, 2)
                Finir si
            Après
        Après
        . Columns.AutoFit
        . [a1]. Sorte Key1 : =. [a1], Key2 : =. [C2], Order1 : =xlAscending, Order2 : =xlAscending, en-tête : =xlYes
    Extrémité avec
    
    Avec l'application
        .ScreenUpdating = rectifient
        . Calcul = xlCalculationAutomatic
    Extrémité avec
    
    MsgBox « fait »
    
Sous-marin d'extrémité
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us