Question : Excel VBA - Enchaîner les cellules dans chaque autre colonne dans la gamme

Le dossier joint a quelques colonnes où je voudrais joindre toutes les colonnes des textes (chaque deuxième colonne commençant par B) et mettre les résultats dans une colonne sur Sheet1, par exemple. le
Hard-coded avec une formule, ce serait le =concatenate assez simple (b2, «  |  », d2, «  |  », F2, «  |  », h2) avec le pipe-symbole «  |  » divisant chaque gisement des textes.  Ou c'a pu juste être =b2 et «  |  » et d2… etc.  Coller alors la formule en bas du page.

I ne peut pas figurer dehors comment faire ceci dans VBA though.
I penser que vous devez employer a pour… chacun et compter les colonnes à travers pour finir (xlToLeft) puis l'étape 2 pour chaque autre column.
Then… ?  chaque cellule est ajoutée à la prochaine jusqu'à l'extrémité de la gamme. ? ? ?
For quelque raison la syntaxe pour la collection de gamme et de cellules (et la logique du compte à travers et de mettre en référence alors les variables) ne se comprenne pas ou à travail pour me.
Thanks pour votre aide !
class= " lastRow de
>Attachments de " nom " de class= de
class= " valeur " de
>

class= " fileInfo " de
le title= " de " nom de fichier de class= " de sampleText-concatenate.xls le class= (32 KBS)  Javascript de href= " de " attachmentDetails de class= " de (type de dossier détails)  
class= " description " de
enchaîner les cellules dans chaque autre column
le class= de
de >
class= de

Réponse : Excel VBA - Enchaîner les cellules dans chaque autre colonne dans la gamme

Essayer ceci :
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 :
Substrater ConcatenateText ()
    
    Obscurcir le lastRow en tant que longtemps
    Obscurcir le lastCol en tant que longtemps
    Obscurcir le tempLastRow en tant que longtemps
    Obscurcir I en tant que longtemps 'incrémentent des rangées
    Obscurcir p en tant que longtemps 'incrémentent des colonnes
    Obscurcir le conValue comme corde
    Le faible conSheet comme corde 'enchaînent le nom de feuille
    Faible destSheet nom de feuille de destination comme corde '
    
    destSheet = « Sheet1 »
    conSheet = « surveyText »

    lastRow = feuilles (conSheet). Gamme (« A » et Rows.Count). Extrémité (xlUp). Rangée
    lastCol = feuilles (conSheet). Gamme (Columns.Count et « : 1 »). Extrémité (xlToRight). Colonne
    
    Pour I = 2 au lastRow
        Pour p = 2 à l'étape 2 de lastCol
            conValue = conValue et «  |  » Et feuilles (conSheet). Cellules (I, p). Valeur
        Après
        tempLastRow = feuilles (destSheet). Gamme (« A » et Rows.Count). Extrémité (xlUp). Rangée + 1
        Feuilles (destSheet). Cellules (tempLastRow, 1).Value = droit (conValue, Len (conValue) - 3)
        conValue = ""
    Après i
    
    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