2014-10-13 6 views
-1

Я хотел бы знать, можно ли создать макрос, который будет вставлять каждую ячейку из скопированного диапазона несколько раз (x) в один столбец.Формула множественного склеивания для excel

Например. мы имеем данные в форме, как этот
в
б
с
...
И нам нужно (например, х = 4)




б
b
b
b
c
c с
с

+2

Ответ на ваш вопрос: «да, можно». –

+0

http://stackoverflow.com/questions/9951415/save-range-to-variable – JNevill

ответ

0

Пожалуйста, попробуйте это:

Sub pCreateMultipleTimes() 

    Dim strText    As String 
    Dim strOutput   As String 
    Dim intMultiplier  As Integer 
    Dim varTempData   As Variant 
    Dim lngLoop1   As Long 
    Dim lngLoop2   As Long 

    'Considering data to be in form so it will be in text 
    strText = "a b c" 

    ' x=4 
    intMultiplier = 4 

    'Split Text with space as delimiter and assign it to Variant 
    varTempData = Split(strText, " ") 

    'Loop through to create the final combination output 
    For lngLoop1 = LBound(varTempData) To UBound(varTempData) 
     For lngLoop2 = 1 To intMultiplier 
      strOutput = Trim(strOutput & " " & varTempData(lngLoop1)) 
     Next lngLoop2 
    Next lngLoop1 
    MsgBox "Your needed Output is: " & strOutput, vbOKOnly + vbInformation 

End Sub 
+0

помните, что на бедные вопросы, которые не требуют каких-либо усилий и/или попытки решения, не нужно отвечать. –

+0

@ vba4all: Благодарим вас за напоминание. Иногда я стараюсь забыть - Jur Pertin –

+0

Не могли бы вы посоветовать мне настроить макрос на данные в менее конкретной форме - как предполагается, для работы с столбцами с 200 + ячейками данных. –

Смежные вопросы