Выбрать дату в календареВыбрать дату в календаре

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

а 1
а 2
б 1
б 2
б 3
б 4
в 1
г 1
г 2
г 3
или
а1
б 1
б 2
в 1
г 1
г 2
г 3
а 2
б 3
б 4
Заполнить массив данными с нескольких листов и выгрузить на другой лист
 
Доброго времени суток,

небольшой вопрос по работе с массивами. необходимо взять данные (столбцы с данными) из ячеек (с одинаковыми координатами )на нескольких листах и выгрузить на лист заданный лист столбец за столбцом. то есть, чтобы в первом столбце были данные с первого листа, во втором со второго и т.д. Попытался таким образом сделать цикл, но он не работает почему то.
Код
Sub Result_rpt()

Dim A()

For i = 0 To 11 - 1
    With Sheets("Лист" & CStr(i + 1))
    A = .Range(.Cells(16, 3), .Cells(579, 3)).Value
    End With
    Sheets("результат").Range(Sheets("результат").Cells(1, 1 + i)).Resize(564, 1) = A
Next i

End Sub
П.С. просто копированием не интересно, хочется как по умному через массив
Код
Sub Result_rpt_copypaste()

Dim iNumberAll As Integer
Dim iNumber As Integer
iNumberAll = InputBox("Введите количество листов")
For iNumber = 0 To iNumberAll - 1
    Sheets("Лист" & CStr(iNumber + 1)).Select
    Range("C16").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("результат").Select
    Worksheets("результат").Cells(1, 2 + iNumber).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    'Sheets("Лист" & CStr(iNumber + 1)).Select
    Sheets("результат").Select
Next iNumber

End Sub
Изменено: konstantan - 16.05.2018 15:21:36
Создание массива со стилем ссылок R1C1., не работает макрос
 
Код
Sub Result_rpt()
Dim A()

'A = Sheets("Лист2").Range("C16:C579").Value
A = Sheets("Лист2").Range(Cells(16, 3), Cells(579, 3)).Value
Sheets("результат").Range("B1").Resize(564, 1) = A

End Sub
макрос не работает. выдает Run-time error '1004'.

но вот такой макрос работает
Код
Sub Result_rpt()
Dim A()

A = Sheets("Лист2").Range("C16:C579").Value
'A = Sheets("Лист2").Range(Cells(16, 3), Cells(579, 3)).Value
Sheets("результат").Range("B1").Resize(564, 1) = A

End Sub
вроде бы
Код
Range("C16:C579") равно Range(Cells(16, 3), Cells(579, 3))
Последовательное накопление значений в переменной
 
Есть столбец с некоторым количеством данных. Как при помощи цикла преобразовать этот столбец в одну длинную строку, т. е. необходимо накапливать в переменной эти значения и как только цикл закончится вывести их в MsgBox?
Создание текстовых документов по шаблону, сгенерировать несколько текстовых документов изменяя определенные строки
 
Возможно ли реализовать в Excel макрос для создания нескольких текстовых документов по готовому шаблону?
Задача:
1) есть шаблон текстового файла с "пустыми местами" на определенных позициях (например 5 пустых мест)
2) "пустые места" расположены конкретных позициях (например 16 символов от левого края)
3) есть таблица Excel с данными (например таблица из 50 строк и 5 столбцов)

необходимо подставлять в шаблон данные из таблицы в пустые места и создавать отдельный текстовый файл таким образом, чтобы текст шаблона был неизменным, т. е. после вставки данных текст шаблона не сдвигался на число вставляемых символов.

Пример текста. крестиками обозначены позиции куда надо вставлять текст. Текст не может быть больше 8 символов, если меньше оставшиеся символы заменяются пробелами
LOAD    101108 1.      XXXXXXXX 101107 XXXXXXXX 101109 XXXXXXXX 101110
       XXXXXXXX 101111 XXXXXXXX 101112 XXXXXXXX 101113

P.S. пардон за орфографию и пунктуацию
Изменено: konstantan - 05.10.2017 10:08:00
Страницы: 1
Наверх