Данные из нескольких ячеек в одну
- 4 Июнь, 2015 -
- Уроки Excel -
- Tags :
- 0 Comments
Есть несколько способов поместить данные из нескольких ячеек в одну.
Самый простой — это использовать знак &,
Если между данными ячеек нужны пробелы или другие знаки, их можно проставить в отдельном столбце, потом их просто скрыть (в примере в ячейке С2 стоит пробел).
Есть более легкий способ — использовать формулу, чтобы не тыркать кажду ячейку вручную. Это формула СЦЕПИТЬ
Этот способ хорош, если не нужно объединять большие диапазоны данных.
Если нужно объединить данные из большого количества ячеек, расположенных в одном или в нескольких столбцах, проще всего использовать макросы. Для этого находясь в том файле, где нужно разместить в одной ячейке данные и других ячеек надо нажать Alt+F11. Откроется окно макросов. Там надо выбрать пункт Insert, в выпавшем списке пункт Module
и в открывшемся белом поле вставить следующие макрос
Function СЦЕПДИАП_A(Диапазон As Variant, Optional Разделитель As String = » «, _
Optional ПоСтолбцам As Boolean = False, Optional сПереносом As Boolean = False) As String
‘—————————————————————————————
‘ Author : RAN
‘ Purpose : Сцепляет текст ячеек из заданного диапазона
‘ Notes : Разделитель по умолчанию » »
‘ Notes : Optional ПоСтолбцам — просмотр по строкам(умолчание) и по столбцам
‘ Notes : Optional сПереносом по умолчанию — «нет»
‘—————————————————————————————
Dim i&, j&, k&, arr
If сПереносом Then
If Разделитель <> » » Then
Разделитель = Разделитель & vbLf
Else
Разделитель = vbLf
End If
End If
If TypeName(Диапазон) = «Range» Then Диапазон = Диапазон.Value
If Not IsArray(Диапазон) Then СЦЕПДИАП_A = Диапазон: Exit Function
ReDim arr(1 To UBound(Диапазон, 1) * UBound(Диапазон, 2))
If ПоСтолбцам Then
For i = 1 To UBound(Диапазон, 2)
For j = 1 To UBound(Диапазон, 1)
If Len(Диапазон(j, i)) Then k = k + 1: arr(k) = Диапазон(j, i)
Next: Next
Else
For j = 1 To UBound(Диапазон, 1)
For i = 1 To UBound(Диапазон, 2)
If Len(Диапазон(j, i)) Then k = k + 1: arr(k) = Диапазон(j, i)
Next: Next
End If
ReDim Preserve arr(1 To k)
СЦЕПДИАП_A = Join(arr, Разделитель)
СЦЕПДИАП_A = Application.Trim(СЦЕПДИАП_A)
End Function
Далее вернуться к странице excel и там в нужной ячейке вписать формулу =СЦЕПДИАП_A(ваш диапазон)
И все готово!
Popularity: 5% [?]