Страницы: 1
RSS
Из выгрузки 1С распределить текст по столбцам, критерий - отступы в ячейках
 
Добрый день. Пожалуйста, подскажите,  как справиться с проблемой.
Данные выгружаются из 1С. В Excel это один столбец с данными разных категорий. Критерием для распределения по столбцам являются отступы.
Excel отступы видит. 2, 4, 6.
С задачей бы справилась, но не знаю, как с помощью формулы найти количество отступов. Не смогла найти код символа "Отступ".

Буду рада любому решению или подсказке.
 
Это макросом, формула не умеет определять формат.
 
Макрос:
Код
Sub Split_1C_export()
Dim arr(), spArr(), a&, b%, c&, tMax%, aa As Range
arr = [A6].CurrentRegion.Value: c = 0: tMax = 0
ReDim Preserve arr(1 To UBound(arr), 1 To 2): a = 1
For Each aa In [A6].CurrentRegion
  If aa.IndentLevel > 0 Then b = aa.IndentLevel / 2 Else b = 0
  arr(a, 2) = b: a = a + 1
  If b > tMax Then tMax = b
Next
For a = 1 To UBound(arr)
  If arr(a, 2) = tMax Then c = c + 1
Next
ReDim spArr(1 To c, 1 To tMax + 1): c = 1
For a = 1 To UBound(arr)
  spArr(c, arr(a, 2) + 1) = arr(a, 1)
  If arr(a, 2) = tMax Then c = c + 1
Next
Set aa = [C6].Resize(UBound(spArr, 1), UBound(spArr, 2))
Intersect(aa, Columns("C:C")).NumberFormat = "@"
aa.Value = spArr: aa.Borders.LineStyle = xlContinuous
aa.IndentLevel = 0: aa.WrapText = False
End Sub
Изменено: Anchoret - 15.04.2018 19:24:39
 
Vikttur, спасибо за оперативный ответ.
Прежде чем писать макрос, попробую выяснить, как отчет выгружают из 1С.
Должны быть соответствующие настройки. Если что, то, как понимаю, обращаться надо в раздел платных услуг.
Тему можно закрыть.
 
Цитата
Светлана Баринова написал:
Прежде чем писать макрос
Все уже написано... Берите и пользуйтесь. Из настроек только разрешенные макросы.
 
Anchoret, спасибо Вам огромное.
Всё получилось. Отличный макрос.
Страницы: 1
Наверх