Столкнулся с такой проблемой. Есть таблица excel, сократим ее до 2-х столбцов: - Запрос - Потраченное время
В запросе хранится цифровой номер, например, 555. В потраченном времени, соответственно, время, которое потратил человек на выполнение запроса. Но в таблице появилось много брака, в частности в столбце Запрос. Начали включать в него несколько номеров через запятую и, соответственно, указывают общее время на выполнение, т.е.: 555, 444, 111 с потраченным временем 9 часов
Можно ли как-то разделить такие строки на несколько (в зависимости от кол-ва номеров в столбце), а затраченное время высчитывать также исходя из кол-ва? Т.е. на выходе получить: 555 - 3 часа 444 - 3 часа 111 - 3 часа
Всем привет!
Столкнулся с такой проблемой. Есть таблица excel, сократим ее до 2-х столбцов: - Запрос - Потраченное время
В запросе хранится цифровой номер, например, 555. В потраченном времени, соответственно, время, которое потратил человек на выполнение запроса. Но в таблице появилось много брака, в частности в столбце Запрос. Начали включать в него несколько номеров через запятую и, соответственно, указывают общее время на выполнение, т.е.: 555, 444, 111 с потраченным временем 9 часов
Можно ли как-то разделить такие строки на несколько (в зависимости от кол-ва номеров в столбце), а затраченное время высчитывать также исходя из кол-ва? Т.е. на выходе получить: 555 - 3 часа 444 - 3 часа 111 - 3 часаdonarny
Sub spl() Dim i&, y&, lstr&, a& lstr = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To lstr For y = 0 To UBound(Split(Cells(i, 1), ",")) a = a + 1 Cells(a, 3) = Split(Cells(i, 1), ",")(y) Cells(a, 4) = Cells(i, 2) / (1 + UBound(Split(Cells(i, 1), ","))) Next y Next i End Sub
[/vba]
[vba]
Код
Sub spl() Dim i&, y&, lstr&, a& lstr = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To lstr For y = 0 To UBound(Split(Cells(i, 1), ",")) a = a + 1 Cells(a, 3) = Split(Cells(i, 1), ",")(y) Cells(a, 4) = Cells(i, 2) / (1 + UBound(Split(Cells(i, 1), ","))) Next y Next i End Sub