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

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

вот сам код
Код
Private Sub Worksheet_Change(ByVal Target As Range)
  '  Application.ScreenUpdating = False
  '  Application.EnableEvents = False
     Dim cell As Range
    For Each cell In Target
        If Not Intersect(cell, ListObjects("Tracker_list").ListColumns("ACTION").DataBodyRange) Is Nothing Then
            'On Error Resume Next
            With Cells(Target.Row, ListObjects("Tracker_list").ListColumns("Date of completion").DataBodyRange.Column)
                If IsEmpty(Target) Then
                    .Value = "ÕÇ"
                    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Clear
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(255, 153, 102)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(155, 187, 89)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(196, 215, 155)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(216, 228, 188)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(235, 241, 222)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add Key:=Range("Tracker_list[RANK" & Chr(10) & "(list)]"), SortOn:= _
        xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlDescending, _
        , xlSortNormal).SortOnValue.Color = RGB(166, 166, 166)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add Key:=Range("Tracker_list[ACTION]"), SortOn:=xlSortOnValues, _
        Order:=xlAscending, CustomOrder:="P,Q,]", DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort
        .Header = xlYes
        .MatchCase = True
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
                Else
                    .Value = Now
                    .EntireColumn.AutoFit
                    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Clear
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(255, 153, 102)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(155, 187, 89)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(196, 215, 155)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(216, 228, 188)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlAscending, _
        , xlSortNormal).SortOnValue.Color = RGB(235, 241, 222)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add Key:=Range("Tracker_list[RANK" & Chr(10) & "(list)]"), SortOn:= _
        xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add(Range("Tracker_list[ACTION]"), xlSortOnCellColor, xlDescending, _
        , xlSortNormal).SortOnValue.Color = RGB(166, 166, 166)
    ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort. _
        SortFields.Add Key:=Range("Tracker_list[ACTION]"), SortOn:=xlSortOnValues, _
        Order:=xlAscending, CustomOrder:="P,Q,]", DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Tracker_list").ListObjects("Tracker_list").Sort
        .Header = xlYes
        .MatchCase = True
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
                End If
            End With
        End If
    
   ' Application.ScreenUpdating = True
   ' Application.EnableEvents = True
    Next cell
End Sub
Изменено: Ар.т - 25.11.2019 16:17:37
Автосортировка строк по условию в рамках умной таблицы, макрос
 
Доброго времени суток,
граждане, кто нибудь выполнял ли автосортировку строк по условию ( не алфавиту) в рамках умной таблице, то есть расширямого динамического диапазона ?
Пример
есть умная таблица, в которую заношу задания на каждый или долгосрочный план, при выполнении ставлю галочку. уменя просиходит задеменения фона.
задачи дабавляются сверху путем вставки листа, так как нет желания прокручивать лист в самый низ ( так как кол-во заданий будет рости)
вопрос, как сделать, что бы строки с галочками уходили в самый низ умной таблице, а не фиксированного диапазона ?
Изменено: Ар.т - 24.11.2019 17:01:09
Создание листов по кнопке по определенному сценарию, макрос
 
vikttur,
пожалуйста, выложите в общий доступ.
Создание листов по кнопке по определенному сценарию, макрос
 
Ігор Гончаренко, все спасибо.
работает. тема закрыта - вопрос к модерам - я хочу выложить в общий доступ данный макрос, возможно людям понадобится, если вы не против.
Создание листов по кнопке по определенному сценарию, макрос
 
Ігор Гончаренко, оплачено . проверьте пожалуйста.
файл можно сюда. мне не жалко. если будут вопросы ведь можно сразу мелкие недочеты исправить ?
Создание листов по кнопке по определенному сценарию, макрос
 
цена обновлена )
Создание листов по кнопке по определенному сценарию, макрос
 
ммм, я думал тут быстрей вопросы решаются )
Создание листов по кнопке по определенному сценарию, макрос
 
Доброго времени суток, - цена вопроса 800Rub.Задача такова,
имеется  динамическая (smart) таблица в колонке, по кнопке создается(вставляется со сдвигом вниз после строки 3) новая  строка, по всплывающему боксу пишется его уникальное имя  (бывает и текст , бывает и цифры) примеру  "12_123.1"
Это имя должно быть скопировано - будет использоваться позже.
Далее  в книге проверяется на наличие листа с таким же именем и в диапазоне   ("project_list").ListColumns("JP").DataBodyRange),
если он где либо есть- выводится сообщение "задача уже создана"
если нет
то  лист копируется с определенного шаблона и переносится в конец книги.  при этом, ячейка в новом листе (С1) получает значение "12_123.1"
активируется  лист ("project_list") и в созданной строке в ячейки А4 так же получает  значение "12_123.1", на этой же строке B4 значение также "12_123.1" но с  гиперлинком на одноименный лист.
то есть, будет некая работа  цикличная из раза в раз активировать кнопку, по которой будет  создаваться строка со сдвигом вниз в одном и том же месте после строки  3, и будет запускаться ход событий описанный выше.
причем нужно, сделать защиту от разного рода ошибок, как удаление строки пустой, или удаление строки проекта.
Изменено: Ар.т - 22.11.2019 20:02:04
фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
Уважаемый МатросНаЗебре Огромное спасибо, за ваше время и помощь.
идеально работает.

Тема исчерпана можно закрывать. Спасибо всем.
фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
Да совершенно верно,
вот так работает та часть кода с темы данного сайта
https://www.planetaexcel.ru/techniques/5/208/
Изменено: Ар.т - 20.11.2019 12:22:28
фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
Уважаемые кто мог бы помочь ? Up!
Смог добится того что полный код отрабатывает на половину, то есть первая часть работает, но вторая при действиях не реагирует, есть подозрения проблеме в DIM нужно было еще задать как то, но не знаю.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    Application.EnableEvents = False
     Dim NewCellValue$, OldComment$
  
     
     Dim cell As Range
     
    For Each cell In Target
    'åñëè ÿ÷åéêà íå â îòñëåæèâàåìîì äèàïàçîíå, òî âûõîäèì ( äîïèñàòü òàêóþ êîìàíäó äëÿ îïòèìèçàöèè)
        If Not Intersect(cell, Range("F3:F18, K3:K13, P3:P18")) Is Nothing Then
        'On Error Resume Next
            With Target(1, 2)
            If IsEmpty(Target) Then
            .Value = "õç"
       Else
            .Value = Now
            '.EntireColumn.AutoFit
            End If
            End With
        
 
    ElseIf Intersect(Target, Range("B48")) Is Nothing Then
    With cell(Target, Range("B48"))
        If IsEmpty(cell) Then
            NewCellValue = "ß÷åéêà î÷èùåíà" 'ôèêñèðóåì î÷èñòêó ÿ÷åéêè
        Else
            NewCellValue = cell.Formula     'èëè åå ñîäåðæèìîå
       End If
       End With
       'On Error Resume Next
        
      
        With cell
            OldComment = .Comment.Text & Chr(10)
            .Comment.Delete     'óäàëÿåì ñòàðîå ïðèìå÷àíèå (åñëè áûëî)
            .AddComment         'äîáàâëÿåì íîâîå è ââîäèì â íåãî òåêñò
            .Comment.Text Text:=OldComment & Application.UserName & " " & _
                            Format(Now, "MM.DD.YY h:MM:ss") & " : " & NewCellValue
            .Comment.Shape.TextFrame.AutoSize = True    'äåëàåì àâòîïîäáîð ðàçìåðà
            .Comment.Shape.TextFrame.Characters.Font.Size = 8
        End With
           End If
      Application.ScreenUpdating = True
    Application.EnableEvents = True
   Next cell
 End Sub

Изменено: Ар.т - 20.11.2019 10:15:09
фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
МатросНаЗебре снова спасибо, но не много не то, что требовалась.
Я пытался сам подстроить, вышло даже так , что не много уменьшил размер кода. но не работает в связке с
https://www.planetaexcel.ru/techniques/5/208/

можете проверить ?
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Dim cell As Range
    For Each cell In Target
    'если ячейка не в отслеживаемом диапазоне, то выходим ( дописать такую команду для оптимизации)
        If Not Intersect(cell, Range("F3:F18, K3:K13, P3:P18")) Is Nothing Then
           On Error Resume Next
            With Target(1, 2)
            If IsEmpty(Target) Then
            .Value = "хз"
       
       Else
            
            .Value = Now
            '.EntireColumn.AutoFit
            End If
            End With
            ElseIf Not Intersect(cell, Range("B48")) Is Nothing Then Exit Sub
    With Cells(Target, Range("B48"))
        If IsEmpty(cell) Then
            NewCellValue = "Ячейка очищена" 'фиксируем очистку ячейки
        Else
            NewCellValue = cell.Formula     'или ее содержимое
        End If
        'On Error Resume Next
         
        With cell
            OldComment = .Comment.Text & Chr(10)
            .Comment.Delete     'удаляем старое примечание (если было)
            .AddComment         'добавляем новое и вводим в него текст
            .Comment.Text Text:=OldComment & Application.UserName & " " & _
                            Format(Now, "MM.DD.YY h:MM:ss") & " : " & NewCellValue
            .Comment.Shape.TextFrame.AutoSize = True    'делаем автоподбор размера
            .Comment.Shape.TextFrame.Characters.Font.Size = 8
        End With       
   Next cell
   
    Application.ScreenUpdating = True
    Application.EnableEvents = True
    
   
    
 End Sub

фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
А можно узнать, в условиях, если на листе имеются разные виды фиксаций дат изменения ? и разные диапазоны ?

пример ниже, за ранее спасибо.
я пробовал несколько "Private Sub Worksheet_Change(ByVal Target As Range)" на одном листе, но видимо это как бы начало книги и sub end конец,
пробовал разбивать по группам, но там видимо нельзя что бы не которые функции повторялись в одном большом коде, хотя c IF и end IF , мы можем часто использовать.

странно когда код сюда прописывал через фукнцию ответа отображение кода ввиде текста, окно все аккуратно показывает, а при ответе все в кашу свливается
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False ' отключает обработку событий для исключения зацикливания или выполнения незапланированных действийDim NewCellValue$, OldComment$
Dim cell As Range
     
    'если ячейка не в отслеживаемом диапазоне, то выходим
    If Intersect(Target, Range("B48")) Is Nothing Then Exit Sub
     
    'перебираем все ячейки в измененной области
    For Each cell In Intersect(Target, Range("B48"))
        If IsEmpty(cell) Then
            NewCellValue = "Ячейка очищена" 'фиксируем очистку ячейки
        Else
            NewCellValue = cell.Formula     'или ее содержимое
        End If
        On Error Resume Next
         
        With cell
            OldComment = .Comment.Text & Chr(10)
            .Comment.Delete     'удаляем старое примечание (если было)
            .AddComment         'добавляем новое и вводим в него текст
            .Comment.Text Text:=OldComment & Application.UserName & " " & _
                            Format(Now, "MM.DD.YY h:MM:ss") & " : " & NewCellValue
            .Comment.Shape.TextFrame.AutoSize = True    'делаем автоподбор размера
            .Comment.Shape.TextFrame.Characters.Font.Size = 8
        End With    
     For Each cell In Target   'проходим по всем измененным ячейкам
     If Not Intersect(cell, Range("F3:F18")) Is Nothing Then  'если изменененная ячейка попадает в диапазон A2:A100
'On Error Resume Next ' Выполнение пойдет дальше, несмотря на ошибку, вероятно опасная функция
     If IsEmpty(Target) Then ' если цель/цели пустые либо очистили цель
          Target(1, 2) = Empty ' то очистит ячейку с датой, слева от цели
Else
          With Target(1, 2) ' если цель/цели не пустая
      ' нужен вариант для вставки фиксированного значения к примеру "ХЗ"
         .Value = Now ' вписывается дата (текущая)
         .EntireColumn.AutoFit ' подстройка ячейки
     End With ' заканчивает  with
        End If ' заканчивает 1ый if
        End If ' заканчивает 2ой if
 Next cell ' к слудующей ячейки
 
 
   For Each cell In Target   'проходим по всем измененным ячейкам
     If Not Intersect(cell, Range("M3:M18")) Is Nothing Then  'если изменененная ячейка попадает в диапазон A2:A100
'On Error Resume Next ' Выполнение пойдет дальше, несмотря на ошибку, вероятно опасная функция
     If IsEmpty(Target) Then ' если цель/цели пустые либо очистили цель
          Target(1, 2) = Empty ' то очистит ячейку с датой, слева от цели
Else
          With Target(1, 2) ' если цель/цели не пустая
      ' нужен вариант для вставки фиксированного значения к примеру "ХЗ"
         .Value = Now ' вписывается дата (текущая)
         .EntireColumn.AutoFit ' подстройка ячейки
     End With ' заканчивает  with
        End If ' заканчивает 1ый if
        End If ' заканчивает 2ой if
 Next cell ' к слудующей ячейкиApplication.ScreenUpdating = True ' возвращает в исходное положение обработку событий для исключения зацикливания
End Sub
Изменено: Ар.т - 18.11.2019 15:40:09
фиксированная дата изменения соседней ячейки, фиксированная дата изменения соседней ячейки для smart таблиц
 
МатросНаЗебре, при много блогадарен, а подскажите на что заменить  Target(1, -0) = Empty  что бы мог вписывать определенное значение.

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

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

Мы имеем вот такой код взят из темы Автоматическая вставка текущей даты в ячейку при вводе данных

Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False ' отключает обработку событий для исключения зацикливания или выполнения незапланированных действий
      For Each cell In Target   'проходим по всем измененным ячейкам
       If Not Intersect(cell, Range("F2:F100")) Is Nothing Then  'если изменененная ячейка попадает в диапазон A2:A100
On Error Resume Next ' Выполнение пойдет дальше, несмотря на ошибку, вероятно опасная функция
            If IsEmpty(Target) Then ' если цель/цели пустые либо очистили цель
             Target(1, -0) = Empty ' то очистит ячейку с датой, слева от цели
     Else
      With Target(1, -0) ' если цель/цели не пустая
      ' нужен вариант для вставки фиксированного значения к примеру "ХЗ"
       .Value = Now ' вписывается дата (текущая)
        .EntireColumn.AutoFit ' подстройка ячейки
       End With ' заканчивает  with
            End If ' заканчивает 1ый if
       End If ' заканчивает 2ой if
Next cell ' к слудующей ячейки
Application.ScreenUpdating = True ' возвращает в исходное положение обработку событий для исключения зацикливания или выполнения незапланированных действий
End Sub

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

у меня кнопка макроса, запускает между 2 и3 строкой вставить новую строку (с форматом смарт таблицы)
- в этом случае код ругается.

//почему так, конкретно таблица называется "TO DO", разные задачи на день месяц  и тп, в идеале не хочется прокручивать листы постоянно вниз, в обще в планах сделать так что бы обработанные задания строки перемещались (автосортировались) в самый низ таблицы. а активные задания всегда оставились на глазах, при возникновении новой задачи, путем кнопки вносится задание.

Что хотелось бы, указать динамический дипазон к примеру
Код
 dim lRow&
 If Target.Cells.Count > 1 Then Exit Sub
 lRow = Cells(Rows.Count, "F").end(xlUp).row
 If Not Intersect(Target, Range("F2:F" & lRow)) Is Nothing Then

Или - использовав имя диапазона "Tracker_list[[#Headers],[ACTION]]" эта цель мониторинга, а дату вписывать в "Tracker_list[[#Headers],[Date of completion]]" ну естественно обновлять ячейки находящихся на одной строке.( в данном случае слева от заполненной)

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

То, что я на собирал сверху работает корректно (может это не очень граммотный пример) в условиях если мы работаем с фикс таблицей.

так же просмотрел темы: Изменяемый диапазон для работы макроса, Автоматически фиксировать дату и время изменения в ячейке

заранее спасибо

Изменено: Ар.т - 18.11.2019 13:26:34
Общий график шкалы-градусник для разных листов
 
Всем спасибо за помощь, данный вопрос закрыт, позже готовый файл сюда подгружу ( если по размеру влезит), может кому то в будущем понадобится.
Изменено: Ар.т - 18.11.2019 08:34:33
Общий график шкалы-градусник для разных листов
 
Ігор Гончаренко, благодарю.

Блин, я ведь с ДВССЫЛ пробовал у меня не выходило... видимо неправильно ее использовалю Интересно.
Спасибо, что радует в данном исполнении, что реализовано просто через сущ функции а не через VBA.
Еще раз спасибо )

кстати понял почему не работала, я пытался создать ссылку через функцию  ДВССЫЛ($D$8 & !$C$2) или ДВССЫЛ($D$8 & $C$2) то есть я думал имя  листа $D$8 и ячейка $C$2 сама свяжится (!$C$2 а такой вариант в обще не  дает ввести) .
ДВССЫЛ свяжет два текста через ячейки и превратит в  ссылку, то есть в С2, должно быть продолжение будущей ссылки, то есть   !$C$2.

в общем, пишу дальше продолжаю работу, итоговую скину сюда, возможно кому то пригодится )

БМВ - извини, что не увидел ваш ответ. Спасибо большое ) но я в обще не понял как вы это реализовали ?

=РЯД("Монтаж";{1};'Copy of пример1281.xlsm.xls'!Mounting;3)
Mounting это =ДВССЫЛ(титульный!$D$8&"!h11")
Изменено: Ар.т - 17.11.2019 22:01:36 (дополнение)
Общий график шкалы-градусник для разных листов
 
Ігор Гончаренко, в этом случае, я не знаю как заполнять ячейку 3, ведь некоторые листы еще не созданы. я понял что вы описали. но реализация очень сложная для меня. даже сложней то что я сам пытаюсь сделать ))
Общий график шкалы-градусник для разных листов
 
БМВ, затрудняюсь прям коротко описать, есть шкала график, которая должна отображать/ссылаться на разные листы (в которых данные), из сходя из того, что в ячейке Х будет выбрано значение, которое соответсвует имени листа. на всех листах - даные содержатся в опредленных ячейках.
то есть при измении ячейки Х ( выбор другого названия листа) Шкала будет отображать его данные.
 
Общий график шкалы-градусник для разных листов
 
Форумчане подскажите пожалуйста, как реализовать одну шкалу тип "градусник", который будет изменяться по следующему условию:
на первом листе отображена шкала,
на первом листе имеется ячейка Х функцией через Date validation "=INDIRECT("project_list[JP]")"
то есть она ссылается на умную таблицу на другом листе и вызывает список для выбора в ячейку Х на первом листе (список названий листов в книге, который будет рости).
после выбора из списка в ячейка Х, к примеру проекта 123, шкала должна показать график из сходя из данных выброного значения (он же имя листа)
Нам известны конкретные ячейки с данными, они все будут иметь фиксированное место расположение на листах.
Я создал отдельный лист (будет скрыт) где есть адреса ячеек и через функции пытался скрепить названия, что бы в итоге получить точный адрес в соседней ячейке для - каждый раз созданного нового листа, а уже на нее бы ссылался граффик, но видимо это из разряда быдло кода )) и все равно не работает.

заранее спасибо
Страницы: 1
Наверх