Вопрос : Эксел VBA - Конкатенируйте клетки в каждой другой колонке в ряде

Прикрепленный архив имеет некоторые колонки где я хотел был бы соединить все колонки текста (каждую вторую колонку начиная с b) и одеть в результаты в колонке Sheet1, например.
Hard-coded с формулой, было бы довольно просто =concatenate (b2, « | », d2, « | », f2, « | », h2) с труб-символом « | » разделяющ каждое поле текста.  Или это smogло как раз быть =b2 & « | » & d2… etc. после этого наклеивают формулу вниз с page.

I не могут давать в численном выражении как сделать это в VBA though.
I думайте вы должно использовать a для… каждого и подсчитывать колонки поперек для того чтобы закончить (xlToLeft) после этого раздел 2 для каждого другого column.
Then…?  каждая клетка не добавить до следующее одно до конца ряда. ???
For любую причину синтаксис для собрания ряда и клеток (и логики подсчитывать поперек и после этого снабжать ссылками перемеююые) не делает чувство или работу для me.
Thanks для вашей помощи!
class= " lastRow
>Attachments " имени " class= class= " значение "
>

class= " fileInfo "
title= " " filename class= " sampleText-concatenate.xls (32 KB)  яваскрипт " href= " " attachmentDetails class= (тип архива детали)  
class= " описание "
конкатенируйте клетки в каждом другом column
class=
>
class=

Ответ : Эксел VBA - Конкатенируйте клетки в каждой другой колонке в ряде

Попытайтесь это:
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:
Sub ConcatenateText ()
    
    Затемните lastRow как длиной
    Затемните lastCol как длиной
    Затемните tempLastRow как длиной
    Затемните I как длиной 'инкрементируйте рядки
    Затемните p как длиной 'инкрементируйте колонки
    Затемните conValue как шнур
    Тусклое conSheet как шнур 'конкатенирует имя листа
    Тусклое destSheet как имя листа назначения шнур '
    
    destSheet = «Sheet1»
    conSheet = «surveyText»

    lastRow = листы (conSheet). Ряд («a» & Rows.Count). Конец (xlUp). Рядок
    lastCol = листы (conSheet). Ряд (Columns.Count & «: 1»). Конец (xlToRight). Колонка
    
    Для I = 2 к lastRow
        Для p = 2 к разделу 2 lastCol
            conValue = conValue & « | » & листы (conSheet). Клетки (I, p). Значение
        Затем
        tempLastRow = листы (destSheet). Ряд («a» & Rows.Count). Конец (xlUp). Рядок + 1
        Листы (destSheet). Клетки (tempLastRow, 1).Value = право (conValue, Len (conValue) - 3)
        conValue = ""
    Затем iий
    
    Сделанное MsgBox «!»
    
Подводная лодка конца
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us