alexheiki
Дата: Суббота, 19.05.2018, 18:09 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Есть задача в следующем: Имеется календарная сетка(на неделю, меняется автоматически). Далее есть таблица с заказами у каждого заказа есть сроки(дедлайн) по монтажу, подготовке чертежа, изготовлению. Нужно чтобы данные из закладки "Данные" распределялись по закладке "Календарь"(пример внес на календаре как нужно чтобы было) Если даты по сделкам одинаковые нужно чтобы они выстриваились друг под другом . Во вложении исходник. !!!Временную шкалу не трограем!!!! Заранее спасибо.
Есть задача в следующем: Имеется календарная сетка(на неделю, меняется автоматически). Далее есть таблица с заказами у каждого заказа есть сроки(дедлайн) по монтажу, подготовке чертежа, изготовлению. Нужно чтобы данные из закладки "Данные" распределялись по закладке "Календарь"(пример внес на календаре как нужно чтобы было) Если даты по сделкам одинаковые нужно чтобы они выстриваились друг под другом . Во вложении исходник. !!!Временную шкалу не трограем!!!! Заранее спасибо. alexheiki
Все привет
Ответить
Сообщение Есть задача в следующем: Имеется календарная сетка(на неделю, меняется автоматически). Далее есть таблица с заказами у каждого заказа есть сроки(дедлайн) по монтажу, подготовке чертежа, изготовлению. Нужно чтобы данные из закладки "Данные" распределялись по закладке "Календарь"(пример внес на календаре как нужно чтобы было) Если даты по сделкам одинаковые нужно чтобы они выстриваились друг под другом . Во вложении исходник. !!!Временную шкалу не трограем!!!! Заранее спасибо. Автор - alexheiki Дата добавления - 19.05.2018 в 18:09
InExSu
Дата: Воскресенье, 20.05.2018, 00:50 |
Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 650
Репутация:
96
±
Замечаний:
0% ±
Excel 2010, 365
Привет! На скорую руку
[vba]
Код
Option Explicit Private ws_Cald As Worksheet, ws_Data As Worksheet Private rng_Data As Range, rng As Range, eL As Range Public Sub Раскидать_Данные_по_Календарю() With ActiveWorkbook Set ws_Cald = .Worksheets("КАЛЕНДАРЬ") Set ws_Data = .Worksheets("ДАННЫЕ") End With Set rng_Data = ws_Data.[a1].CurrentRegion For Each eL In rng_Data If IsDate(eL.Value) Then Cald_Sow Next MsgBox "Всё" End Sub Private Sub Cald_Sow() Dim iRow As Long, iCol As Long With ws_Cald ' найти столбец Set rng = .Cells.Find(what:=eL.Value, _ LookIn:=xlValues) If rng Is Nothing Then Exit Sub ' => iCol = rng.Column ' найти строку iRow = _ .Cells.Columns(iCol).Find(what:="*", _ SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 'Вставить событие .Cells(iRow + 1, iCol).Value = _ "№ " & ws_Data.Cells(eL.Row, 1).Value & _ " " & _ ws_Data.Cells(1, eL.Column).Value End With End Sub
[/vba]
ВидеоОтчёт. Но ещё нужно тюнинговать ...
Привет! На скорую руку
[vba]
Код
Option Explicit Private ws_Cald As Worksheet, ws_Data As Worksheet Private rng_Data As Range, rng As Range, eL As Range Public Sub Раскидать_Данные_по_Календарю() With ActiveWorkbook Set ws_Cald = .Worksheets("КАЛЕНДАРЬ") Set ws_Data = .Worksheets("ДАННЫЕ") End With Set rng_Data = ws_Data.[a1].CurrentRegion For Each eL In rng_Data If IsDate(eL.Value) Then Cald_Sow Next MsgBox "Всё" End Sub Private Sub Cald_Sow() Dim iRow As Long, iCol As Long With ws_Cald ' найти столбец Set rng = .Cells.Find(what:=eL.Value, _ LookIn:=xlValues) If rng Is Nothing Then Exit Sub ' => iCol = rng.Column ' найти строку iRow = _ .Cells.Columns(iCol).Find(what:="*", _ SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 'Вставить событие .Cells(iRow + 1, iCol).Value = _ "№ " & ws_Data.Cells(eL.Row, 1).Value & _ " " & _ ws_Data.Cells(1, eL.Column).Value End With End Sub
[/vba]
ВидеоОтчёт. Но ещё нужно тюнинговать ... InExSu
Разработчик Битрикс24 php, Google Apps Script, VBA Excel Windows/Mac
Ответить
Сообщение Привет! На скорую руку
[vba]
Код
Option Explicit Private ws_Cald As Worksheet, ws_Data As Worksheet Private rng_Data As Range, rng As Range, eL As Range Public Sub Раскидать_Данные_по_Календарю() With ActiveWorkbook Set ws_Cald = .Worksheets("КАЛЕНДАРЬ") Set ws_Data = .Worksheets("ДАННЫЕ") End With Set rng_Data = ws_Data.[a1].CurrentRegion For Each eL In rng_Data If IsDate(eL.Value) Then Cald_Sow Next MsgBox "Всё" End Sub Private Sub Cald_Sow() Dim iRow As Long, iCol As Long With ws_Cald ' найти столбец Set rng = .Cells.Find(what:=eL.Value, _ LookIn:=xlValues) If rng Is Nothing Then Exit Sub ' => iCol = rng.Column ' найти строку iRow = _ .Cells.Columns(iCol).Find(what:="*", _ SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 'Вставить событие .Cells(iRow + 1, iCol).Value = _ "№ " & ws_Data.Cells(eL.Row, 1).Value & _ " " & _ ws_Data.Cells(1, eL.Column).Value End With End Sub
[/vba]
ВидеоОтчёт. Но ещё нужно тюнинговать ... Автор - InExSu Дата добавления - 20.05.2018 в 00:50