Я малыш в VBAExcel VBA список Массива
У меня есть большой выбор это может быть более 1000 текстовых значениями (Это может быть спускаясь A1), я пытаюсь объединить все значения с цитатой и запятой в одну ячейку (C1), я знаю формулу транспонирования, но я не уверен, что мой массив vba распознает это как список.
Я увлекаюсь формулой массива, чтобы распознать c1 как список, чтобы выполнить свое действие.
Я действительно стараюсь держать это в чистоте и не использовать конкатенацию и перетаскивать различные формулы.
Я столкнулся с этим, но это не вставляет все значения в одну ячейку.
Sub transpose()
Dim rng As Range
Dim ws As Worksheet
Dim last As Range
Set ws = ActiveSheet
Set last = ws.Cells(Rows.Count, "A").End(xlUp)
Set rng = ws.Range("A1", last)
For Each cell In rng
Dim hold As String
hold = """"
hold = hold + cell.Value
hold = hold + """" + ", "
cell.Value = hold
Next cell
rng.Copy
ActiveWorkbook.Sheets(2).Range("A1").PasteSpecial transpose:=True
End Sub
Код сделано Райаном E
Если кто-нибудь может подсказать читы на сбор список для массивов, которые были бы велики. За исключением использования инструмента Макро в excel
Пример.
A1 = Company1 A2 = Общества2 и т.д.
Решение
C1 будет отображаться в одной ячейке "company1", "Общества2", .... "company10000"
Я не уверен, я понимаю, что вы имеете в виду как список в С1. Вы говорите о каком-то типе объекта, например ListObject (AKA Table), а точнее о всех перечисленных в тексте значениях, заключенных в кавычки и разделенных запятыми? Если вы не знакомы с этой командой, в VBA есть команда 'JOIN', которая объединяет массив с разделителями. Вы можете просто захватить значения из вашего диапазона в массив, а затем присоединиться к ним и вывести на C1. – nbayly
для Excel 2016 существует функция ['TEXTJOIN'] (https://support.office.com/en-us/article/TEXTJOIN-function-357b449a-ec91-49d0-80c3-0e8fc845691c). В противном случае вы можете скопировать диапазон и получить текст из буфера обмена. – Slai