Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
Andy83
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 2
1

Вывод списком непустых значений из массива подряд

17.07.2015, 16:05. Просмотров 661. Ответов 2
Метки нет (Все метки)

Добрый день.
Не знаю как решить поставленную задачу:
имеется таблица с данными, в листе задание выделена жёлтым,
надо перенести списком в другой лист в столбец "Обозначение нагрузки" не сортируя при этом
То есть сначало собираются непустые значения из первой строки массива,
потом из второй и тд
0
Вложения
Тип файла: xlsx Таблица12.xlsx (20.2 Кб, 9 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.07.2015, 16:05
Ответы с готовыми решениями:

Сцепка ячеек построчно, выборка непустых значений из диапазона и подстановка их в одну ячейку
Есть диапазон где в строках по условиям появляются значения, например: а1:...

Сравнение переменной со списком значений
Подскажите кто знает, есть ли в VBA оператор сравнения со списком допустимых...

Как соорудить условие, где переменная сверяется со списком значений?
вопрос простой как соорудить условие, где переменная сверяется со списком...

Определить, входит ли в массив последовательность подряд идущих значений элементов
задан массив. Определить, входит ли в него последовательность подряд идущих...

вывод непустых значений полей
Помогите, пожалуйста! Бьюсь уже не один день, ничего не получается. В базе...

2
Казанский
14147 / 5848 / 1533
Регистрация: 24.09.2011
Сообщений: 9,179
17.07.2015, 21:02 2
Andy83, этот макрос соберет непустые значения из выделенного диапазона и поместит начиная с яч. В2 листа Расчет:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub Andy83()
Dim v, i&, j&, k&
  v = Selection.Value
  If IsArray(v) Then
    ReDim w(1 To UBound(v) * UBound(v, 2), 1 To 1)
    For i = 1 To UBound(v)
      For j = 1 To UBound(v, 2)
        If v(i, j) <> "" Then k = k + 1: w(k, 1) = v(i, j)
      Next
    Next
    If k Then Range("Расчёт!B2").Resize(k).Value = w
  ElseIf v <> "" Then Range("Расчёт!B2").Value = v
  End If
End Sub
0
Andy83
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 2
20.07.2015, 17:38  [ТС] 3
Спасибо. Очень здорово.
Но, нет ли возможности сделать это автоматически без выделения и выполнения макроса?
Область "сбора", когда таблица будет доделана будет вполне себе определена.
Причём, немного неверно я задал условие. Можно, чтобы была сортировка,
но по строкам, чтобы собиралось без сортировки

То есть, в квадрате A2:C4 можно собирать как:
A2,A3,A4
B2,B3,B4
C2,C3,C4

так и:
B2,B3,B4
A2,A3,A4
C2,C3,C4

но чтобы в строке собиралось именно подряд 2,3,4

Добавлено через 1 час 0 минут
Хотя нет...сортировка всё усложняет...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2015, 17:38

Выборка непустых значений
Здравствуйте! Помогите, пожалуйста, как сделать запрос. На примере, допустим:...

Присвоить переменной значение, равное количеству непустых строк непустых в таблице Excel
Нужно переменной присвоить значение, равное количеству строк(непустых) в...

JS React вывод массива списком
В чем косяк? &lt;script type=&quot;text/babel&quot;&gt; const name = ; class Test...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru