Question : VBA excellent ou accèdent à l'effondrement de données

Mes données sont disponibles dans excellent ou accèdent, ainsi celui qui fait le problème de la solution easier.

My est moi vais enlever des noms de compagnie doubles mais non tous les disques ont le téléphone, fax et le
abc [email protected]
abc 123

def 456
def
def
def [email protected]

ghi
ghi 123
ghi


If du
abc 456 de l'email

abc 123 de fax de téléphone du

company d'email.

par exemple. je supprime des reproductions, je ne veux pas desserrer les données qui pourraient être fournies par un autre disque pour le même company.

From ce qui vous pouvez voir non tous les disques avoir le téléphone #, fax et email, s'ils les ont atall.

After courant le vba, je voudrais que les données ci-dessus ressemblent à l'email

abc 123 de fax de téléphone du this

company 456 [email protected]
abc 123 456 [email protected]
abc 123 456 [email protected]
abc 123 456 [email protected]

def 456 [email protected]
def 456 [email protected]
def 456 [email protected]
def 456 [email protected]

ghi 123
ghi 123
ghi 123


So que je peux supprimer les reproductions sans ennui.  
class= de

Réponse : VBA excellent ou accèdent à l'effondrement de données

courir le sous-marin dans le cahier de travail ci-joint
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 :
Substrater le runme ()

Obscurcir s comme feuille de travail
Placer s = Sheet1

irow = 2

Faibles téléphones comme corde, faxS comme corde, email comme corde

Faire tandis que LenB (s.Cells (irow, « A »). Valeur) > 0

    irow2 = irow
    téléphones = vbNullString
    faxS = vbNullString
    email = vbNullString
    
    Faire tandis que LenB (s.Cells (irow, « A »). Valeur) > 0
        Si LenB (s.Cells (irow, « B »). Valeur) > 0 puis
            téléphones = s.Cells (irow, « B »). Valeur
        Finir si
        Si LenB (s.Cells (irow, « C »). Valeur) > 0 puis
            faxS = s.Cells (irow, « C »). Valeur
        Finir si
        Si LenB (s.Cells (irow, « D »). Valeur) > 0 puis
            email = s.Cells (irow, « D »). Valeur
        Finir si
        irow = irow + 1
    Boucle
    irow = irow2
    Faire tandis que LenB (s.Cells (irow, « A »). Valeur) > 0
        s.Cells (irow, « B »). Valeur = téléphones
        s.Cells (irow, « C »). Valeur = faxS
        s.Cells (irow, « D »). Valeur = email
        irow = irow + 1
    Boucle
    
    Faire tandis que LenB (Trim$ (s.Cells (irow, « A »). Valeur)) = 0 et irow  < s="">
           
 
 
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