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

Страницы: 1
массив как входной параметр функции
 
Привет всем
С помощью формул массива высчитываю данных, затем их хочу соединить. Возник вопрос, как передать этот массив в свою функцию
формула
={Together_Array(",";(E2:E16=J15)*(F2:F16=K15)*A2:A16)}
т.е. на вызове идет Together_Array(",";{строка:строка1:строка2:строка3:строка4:строка5:строка6:..:строка15})
сама функция вылетает на присваивании s= (делал для проверки), без нее не работает тожею
такое чувство что это не массив (ибо UBound ответил 0). А что это за данные тогда, и как их получить на вход функции?
Код
Public Function Together_Array(Dec_Mark As String, ParamArray Value_Array() As Variant) As String
Dim s As String
s = Value_Array(1)
Together_Array = Join(Value_Array, Dec_Mark)
End Function
VBA формула, узнать полный адрес передаваемого интервала в параметре (включая workbook)
 
Привет всем, возник вопрос как передать или обратиться к нужному листу.
Например на вход функции подается большой интервал данных на другой странице / в другом файле, данные нужно подсчитать.
Код
Public Function DO_with_DATE (DATE as long, Dates as variant, SUMs as variant)
если я обращусь
Код
cells(dates.row + q, dates.colunm).value
он мне выдаст данные из той же страницы, откуда я вызываю функцию, но range в формулу передавался на другой лист / файл.
т.е. мне нужно вызвать по типу worksheets("xxx").cells...

фунцию вызываю примерно так:
Код
=DO_with_DATE (A1;[другой файл]лист1.А1:А100;[другой файл]лист1.Б1:Б100)

как узнать родителя интервала Dates или SUMs?
Отправка письма с картинкой VBA (outlook)
 
Привет всем,
Нужно сделать возможность отправки картинки в тексте, нашел кучу материала по поводу как их отправлять, отправлять напрямую без вложения, отправлять с вложением, и все это прекрасно работает, но есть одно НО! Это правильно отображается ТОЛЬКО в outlook, в остальных программах \ на сайте почтовика непосредственно, картинки в тексте нет (а на телефоне стоит ее имя вместо отображения, в мазиле на компе "битая картинка", на сайте вообще пустое место) и только в outlook стоит все отлично....
Может кто помочь с этой проблемой, теги прилагаю.
После cid:стоит имя файла 1.jpg (он подгружен в attachemnt)
Pic:<br>   <img src="cid:"   width=width height=height><br><br>
Код
.Attachments.Add TempFilePath & Cells(5, 2).Value, olByValue, 0
где TempFilePath - директория
Cells(5, 2).Value - имя текущего файла.
Так же пробовал вот такие варианты, у всех итог один:
Код
Function IMG(Folder As String, S As String) As String
'IMG = " <br> <img src='cid:" & Folder + S & "'" & " width=width height=height><br><br>"
'IMG = " <br> <img src=""cid:" & Folder + S & """" & " width=width height=height><br><br>"
'IMG = " <br> <img src=""" & Folder + S & """" & " width=width height=height><br><br>"
'IMG = " <br> <img src=""cid:" & Folder + S & """" & "><br><br>"
'IMG = " <br> <img src='cid:" & Folder + S & "'" & "><br><br>"
End Function
Заранее спасибо.
Форматирование ячейки на основе значения (изменение отображаемого текста)
 
Помнится видел где-то, например вводишь в ячейку число 1, а он отображает слово, относящиеся к числу 1. (но в ячейке хранится именно число). Как это сделать?
Заранее спасибо.
Поясню:
Например коду 1 будет соответствовать слово "нужно", значит в ячейке с единицами будут отображаться "нужно", хотя фактическое значение ячейки будет 1. (примерно тоже самое что и форматирование, но там только работа с форматом, а мне нужен текст.
Изменено: Lisper - 15.05.2018 06:28:13
Скрыть один граф / данные в диаграмме VBA
 
Собственно скрин, того чекбокса, который мне нужен, облазил весь SeriesCollection, оказалось если он скрыт то его там попросту нет, куда лезть дальше?
ActiveSheet.ChartObjects("NAME").Chart. ....
мне нужно его отключить и затем включить.

PS
Нашел
ActiveSheet.ChartObjects("Monthly_graph").Chart.FullSeriesCollection(1)
там он высвечивается даже скрытым.
PSS
Очень похоже на свойство
ActiveSheet.ChartObjects("Monthly_graph").Chart.FullSeriesCollection(1).IsFiltered = false (Видно) / True (Скрыто)
Но у меня не получается его изменить.
PSSS
Да, это именно то и оно работает, единственное что оно не работает при моей защите листа (если это делать через VBA) но работает, если делать ручками.
Может кто подсказать почему?
Код выглядит так:
Код
Sub DA_Graph_this_month()
Dim This_chart_S As Series

Set This_chart_S = ActiveSheet.ChartObjects(CST_MONTHLY_GRAPH).Chart.FullSeriesCollection(1)

If This_chart_S.IsFiltered = True Then
    This_chart_S.IsFiltered = False
    Else
    This_chart_S.IsFiltered = True
    End If

End Sub
Изменено: Lisper - 30.01.2018 11:26:55
[ Закрыто] Подскажите формулу Function XXX(range, formula) as range
 
Всем привет, возник такой вопрос, необходимо посчитать сумму всех чего-то там, по дням недели.
Есть таблица, в которой 1 столбец - дата, 2 столбец - число.
Если запустить функцию суммаесли (диапазон, критерий, диапазон суммирования) то мне просто необходим еще один столбец, в который я пропишу =деньнед. Но этого я делать не хочу, да и места нет. Собственно вопрос, есть ли функция, которая выдает на выходе диапазон, но при ее обработке значение из этого диапазона подчиняется формуле.
Как я ее себе вижу  =суммаесли(ХХХ(формула(диапазон)),критерий, диапазон суммирования)
или =суммаеслимн(диапазон,диапазон суммирования, деньнед(каждый) = 1)
Изменено: Lisper - 17.01.2018 06:52:18
Изменение параметров данной ячейки в функции
 
Мне по работе приходится возиться с "китайской" базой данных, у которых время хранится в своем формате, для преобразования решил написать надстройку, но возникает вопрос, как сделать ячейку автоматически датой и выровнять ширину ячейки.
Код
Public Function GHW_EXTEND_DATA(GHW_EXTEND_TIME As String) As Double
    GHW_EXTEND_DATA = 25569.125 + CDbl(GHW_EXTEND_TIME) / 86400
    'THISCell.NumberFormat = "YYYY.MM.dd HH:MM"
    'THIScell.EntireColumn.AutoFit
End Function
Здесь THISCell должна быть данная (изменяемая) ячейка. Как понимаю Activecell тут не подходит, поскольку во время пересчета активная ячейка может быть другой. Какие еще возможности у меня есть?
Вопрос №2
При передаче параметра ячейки в функции какой параметр передается.
Т.е. если я, например в ячейке A2 прописываю GHW_EXTEND_DATA (A1), то в моей функции под A1 подставляется значение ячейки A1. А могу ли я передать адрес ячейки и делать с ней все что я хочу?
Изменено: Lisper - 18.05.2017 05:31:27
Страницы: 1
Наверх