Подскажите, пожалуйста, как с помощью штатных средств или при помощи макроса перенести ячейки из столбцов в строки? Транспонировать не подходит, т.к. в документе более 5000 строк. Один человек написал макрос, но он работает только с целыми числовыми значениями. При работе с текстом или десятичными выдает ошибку. Сам не знаю что менять,, в экселе почти 0... [vba]
Код
Sub Macros() Dim i As Long, r As Long, n As Variant n = InputBox("Введите количество столбцов," & Chr(10) & "на которое разбить столбец А", _ "Ввод количества столбцов", 6) If n <> "" Then Application.ScreenUpdating = False Dim MyArray As Variant, CArray() As Long r = Int(1 + Columns(1).End(xlDown).Row / n) ReDim CArray(1 To r, 1 To n) MyArray = Range("A1:A" & Columns(1).End(xlDown).Row).Value For i = 1 To UBound(MyArray) CArray(Int((i + n - 1) / n), ((i - 1) Mod n) + 1) = MyArray(i, 1) Next i Range("A1:A" & Columns(1).End(xlDown).Row).ClearContents Range("A1").Resize(r, n) = CArray() Application.ScreenUpdating = True End If End Sub
[/vba]
Подскажите, пожалуйста, как с помощью штатных средств или при помощи макроса перенести ячейки из столбцов в строки? Транспонировать не подходит, т.к. в документе более 5000 строк. Один человек написал макрос, но он работает только с целыми числовыми значениями. При работе с текстом или десятичными выдает ошибку. Сам не знаю что менять,, в экселе почти 0... [vba]
Код
Sub Macros() Dim i As Long, r As Long, n As Variant n = InputBox("Введите количество столбцов," & Chr(10) & "на которое разбить столбец А", _ "Ввод количества столбцов", 6) If n <> "" Then Application.ScreenUpdating = False Dim MyArray As Variant, CArray() As Long r = Int(1 + Columns(1).End(xlDown).Row / n) ReDim CArray(1 To r, 1 To n) MyArray = Range("A1:A" & Columns(1).End(xlDown).Row).Value For i = 1 To UBound(MyArray) CArray(Int((i + n - 1) / n), ((i - 1) Mod n) + 1) = MyArray(i, 1) Next i Range("A1:A" & Columns(1).End(xlDown).Row).ClearContents Range("A1").Resize(r, n) = CArray() Application.ScreenUpdating = True End If End Sub
Один человек написал макрос, но он работает только с целыми числовыми значениями. При работе с текстом или десятичными выдает ошибку. Сам не знаю что менять,, в экселе почти 0...
Саня прав...
Сереж,
Цитата (cave76)
Один человек написал макрос, но он работает только с целыми числовыми значениями. При работе с текстом или десятичными выдает ошибку. Сам не знаю что менять,, в экселе почти 0...