Есть задача сделать размер окна максимально возможным в соответствии с заданной пропорцией W=1,6 H. Затем разместить в нем диапазон Range("A1:AW19") так, чтобы только он в окне и отражался. Однако, работает это так, как будто команда .Width = Application.UsableWidth не дает максимального увеличения ширины окна (аналогично с Height = Application.UsableHeight). Т.е.на разных устройствах разное отображение - где то правильно, где то перекос идет.
Код:
Код
Sub window_adjustment() 'sets excel window according to the master ratio proportion
Dim MasteRatio As Single
MasteRatio = 1440 / 900
With ActiveWindow
.WindowState = xlNormal
.Top = 1
.left = 1
If (Application.UsableWidth / MasteRatio <= Application.UsableHeight) Then
.Width = Application.UsableWidth 'width mastered
.Height = .Width / MasteRatio
Else
.Height = Application.UsableHeight 'height mastered
.Width = .Height * MasteRatio
End If
End With
Range("A1:AW19").Select 'set range to fill the entire screen out
ActiveWindow.Zoom = True
Range("a3").Select
End Sub
А причина не дружелюбности? Специфика кампилятора? Ведь вектора подаются на перемножение одинаковые в двух подходах. В массиве да, работает четко, спасибо!
Всем доброго дня! Пример использования СУММПРОИЗВ во вложении. Для примера разбор расчета ячейки H5, если по шагам пропускать формулу (через F9), то она дает правильный результат и всё считается как нужно, но при этом просто в автоматическом режиме формула даёт 0.
В чем секрет?
PS: Если последний множитель с ЕСЛИОШИБКА(ПОИСК(H2;$D$4:$D$15;1);0)>0 заменить на НЕ(ЕОШ(ПОИСК(Q$2;$H$12:$H$101;1))), то всё работает. Ведь в результате все множители дают одинаковый вектор результатов: СУММПРОИЗВ({5:10:15:20:7:5:6:3:1:4:8:6}*{1:2:1:2:1:2:1:2:1:2:1:2}*{ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ИСТИНА}) т.е. проблема решена, но удивил разный результат работы Excel при прогоне вручную формулы и в автоматическом режиме
The_Prist, есть отчет, состоящий из шаблонных листов (кол-во листов фиксировано), и суммарный лист. Пока структура отчета не зафиксирована (при добавлении ячейки идет смещение) хочу прописать универсальную формулу, которой всё равно на структуру, которая будет цепляться к названию ячейки. т.е. хочу чтобы в ячейке x5 суммировалось всё, что на листах шаблонах в ячейке х5, не важно как этот лист шаблона исправляли/что добавляли.
ДВССЫЛ нужен чтобы не запариваться в случае изменения структуры. Это упрощенный вариант, в оригинале "А1" заменяется на =ПОДСТАВИТЬ(ЯЧЕЙКА("адрес");"$";""). т.е. в итоге нужно что то типа этого: СУММ(ДВССЫЛ("Лист2:Лист3!"&ПОДСТАВИТЬ(ЯЧЕЙКА("адрес");"$";"");ИСТИНА))
уверен что Excel умеет, проблема именно в синтаксисе написания.
Добрый день! Просьба прояснить, почему не работает СУММ+ДВССЫЛ когда суммировать нужно одну ячейку по нескольким листам-шаблонам. =СУММ(ДВССЫЛ("'Лист2:Лист3'!"&"A1";ИСТИНА)) положение ковычек подбирал, но не нашел рабочего варианта:) пример, во вложении.
в корне не согласен! Вопрос от пользователя, который лично мне стал интересен (вопрос) и поломал немного об него (опять же вопрос) голову т.к. не тривиальный и в тоже время простой. Но моими методами решить задачку не получилось, при этом зная свои умения Excel, осталось только спросить выше, у гуру:)) мало ли чего хитрое уже использовали в своей практике.
PS: меня даже удовлетворит ответ от парочки "старожил", что да, это не реально;) ну и не бизнес задача это, больше любопытство, чтобы фрилансеров привлекать
совсем забыл, реализация нужна штатными методами Excel, т.е. файл отправляется пользователю, у которого не будет стоять PowerPivot или будет включен запрет на макросы:) просто в моем понимании это невозможно...но вдруг гуру до чего то додумаются! Заранее спасибо!
Добрый день! Есть ли возможность сделать группировку данных (не через стандартную группировку, а как в сводных таблицах, т.е. чтобы "раскрывающийся крестик" был рядом со словом, а не на левой панели) и при этом после раскрытия списка щелкая на какую-то строчку срабатывала гиперссылка и переход на нужный лист. По сути - файл-прайс лист с содержанием и отдельными листами. На содержании сгруппировано, например, "ВАЗ","Toyota","BMW", дальше каждую группировку можно развернуть, например, у ВАЗа разворачиваются "ВАЗ-2110","Lada Vesta" и тд.модельный ряд. Дальше щелкаешь на определенную модель и тебя перекидывает на лист с информацией о выбранной модели.
Всем привет! Есть рабочий файл, из него перемещают один из листиков и разрываю связи. Связей нет. Сохраняю. Открываю файл снова. Связи появляются заново. В итоге дошел до конкретного столбца и ячейки, которые эту связь содержат. Если просматривать через XML, то действительно эта связь есть. Но что это? И как это убрать? Заранее спасибо!
Добрый день! Почему не работает следующая формула: =ПРОСМОТР("Апр";{"Янв";"Фев";"Мар";"Апр";"Май";"Июн";"Июл";"Авг";"Сен";"Окт";"Ноя";"Дек"};{"01";"02";"03";"04";"05";"06";"07";"08";"09";"10";"11";"12"})
PS: Нужно формат "Дек 10, 2014" привести к нормальному виду даты.
Есть ли какая-нибудь простая формула (через стандартные функции эксель) поиска русских символов в ячейке? Например, есть массив: абвgde abcgde gdeабв gdeabc и формулой проставить - Есть/Нет русс.символы
Добрый день! Подскажите, пожалуйста, как правильно подключиться к базе данных, чтобы : .CommandText = Array("""DWH"".""dbo"".""Office""") название таблицы "Office" можно было вводить, как параметр, который пользователь задаёт, например, в ячейки, А1?
спасибо! Но в этих примерах ось абсцисс все равно одного измерения, а я мне нужно чтобы слева, например, проценты были, а права суммы в деньгах. Т.е.разные оси.
Доброго времени суток! Подскажите, пожалуйста, как в примере два графика соединить в один (две прямоугольные гистограммы влево и право от одной оси ординат, но с разными данными по оси абсцисс).
For i = 1 To 14
If ActiveSheet.PivotTables("СводнаяТаблица3" ;) .PivotFields("Name" ;) .PivotItems(i).Visible = True Then
ActiveSheet.PivotTables("СводнаяТаблица4" ;) .PivotFields("Name" ;) .PivotItems(i).Visible = True
End If
Next i
Есть 2 сводные таблицы, у которых одинаковый фильтр. Как по средством VBA сделать так, чтобы при настройке одного из фильтров, автоматически настраивался второй? Или подскажите, пожалуйста, где можно почитать о работе со сводными через VBA.