Сообщество - MS, Libreoffice & Google docs
Добавить пост

MS, Libreoffice & Google docs

365 постов 11 506 подписчиков
108

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel

Продолжаю пороть чушь, втирать дичь, творить неприличное и по-всякому глумиться над здравым смыслом - и всё это не выходя их Excel.

После того, как я немношк попинговал, пора применить те наработки в какой-нибудь практической задаче - пинг ради пинга выглядит немного бессмысленно.

Идея, как и в прошлый раз, украдена на том же Youtube-канале у говорящего робота. Правда, мне не интересно состояние портов маршрутизатора - это не моя проблема. А вот узнать сколько отпечатали-отсканировали мои принтеры-сканеры, будет крайне полезно. Тем более, что для этого не нужно никуда ходить и даже не нужно ставить и изучать забикс. Всего-то пятнадцать минут от идеи до реализации в Excel. Уверен, вы справитесь быстрее.

Для начала, что такое SNMP: практически любое устройство, имеющее сетевой интерфейс, умеет в этот протокол, который позволяет удалённой стороне получить набор метрик работы этого устройства и управлять им. В данном случае из всех тысяч параметров меня интересует счётчик распечатанных и отсканированных страниц.

Если в двух словах: отправляем принтеру команду с определённым идентификатором, получаем ответ.

К сожалению, нет универсального способа узнать эти идентификаторы - каждый производитель использует свой набор идентификаторов, который также может различаться от модели к модели. С другой стороны,  всё нужное легко гуглятся, ибо используется в шаблонах для Zabbix. Дальше остаётся посмотреть xml-файл и найти в нём нужную строку. Другой вариант - прочитать ВСЕ ответы устройства на ВСЕ запросы и найти нужные значения. К счастью, программ для этого полным-полно, а разобраться в потоках цифр не очень сложно. Например SnmpB.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

Указываем IP-адрес принтера, SNMPv2 (в любой непонятной ситуации выбирай SNMPv2) и запускаем сканирование - правой кнопкой Walk.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

На получение результата может уйти несколько минут.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

Далее остаётся скопировать результат в блокнот (увы, поиск в SnmpB не работает) и найти текстовое значение счётчика, которое нужно предварительно подсмотреть либо через веб-интерфейс принтера, либо ещё как.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

Описанный выше вариант - найти шаблон для забикса и посмотреть что  у него внутри.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

Для всех принтеров и МФУ (все - Kyocera), до которых я смог дотянуться, счётчик распечатанных страниц отдаётся по команде ".1.3.6.1.4.1.1347.43.10.1.1.12.1.1", а отсканированных - ".1.3.6.1.4.1.1347.46.10.1.1.5.3". Домашний Ricoh отдаёт счётчик по команде ".1.3.6.1.4.1.367.3.2.1.2.19.1.0". Единственный доступный HP LaserJet 2015 вообще никак не реагирует на SNMP, но он уже почти сдох, так что не жалко.

Дальше скучно: берём VBA, пишем

On Error Resume Next
Set o = CreateObject("OlePrn.OleSNMP")
o.Open IPaddress, "public", 2, 1000
Name = o.get(".1.3.6.1.2.1.25.3.2.1.3.1")
TotalPrintCounter = o.get(".1.3.6.1.4.1.1347.43.10.1.1.12.1.1")
TotalScanCounter = o.get(".1.3.6.1.4.1.1347.46.10.1.1.5.3")
o.Close
On Error GoTo 0

Всё, остаётся обернуть эти строки в цикл по списку принтеров, и радоваться тому, что одна регулярная задача стала решаться немного проще. Файл лежит на Яндекс.Диске, правда, скорее всего, он будет бесполезен - вряд ли у кого-нибудь есть полсотни киосер.

Счётчик распечатанных страниц сетевого принтера - SNMP в Excel Microsoft Excel, Vba, Длиннопост

Да, почему на картинках идентификаторы начинаются с iso, а команды в коде - с ".1". Просто смиритесь. Или прочитайте описание стандарта.

Показать полностью 5
473

Excel. Несколько советов по борьбе с размером глючно-больших файлов

Бывает работаешь в Эксеелвском файле и он начинает тормозить или просто смотришь на размер файла, а он весит 10 мегабайт, а то и 20-30 Мб, хотя должен быть ну 1-2 Мб максимум.


Скриншотов не будет, только текст. Вы все умные и без них разберетесь. Тем более сейчас скажут, что и без меня это все знают. Но вдруг кто не знает, а такие точно есть - это для Вас.


1.

Первый случай - обратите внимания на вертикальный скрол таблицы. В идеале в нижнем положении ползунок скроллинга должен приводить вас к низу таблицы. Если  скроллинг уводит вас в строки с порядковыми номерами в сотни тысяч - это сигнал, что что-то там затупило. Не знаю как оно там реально считает размер файла, но похоже оно считает все то пустое место как непустое, а чем то занятое.

Реально не так давно счкинули расчетник по работе весом за 30 Мб. Таблица около 5000 строк. Скролл уходит в бездну Экселя. При этом файл иногда притормаживает.


Бороться просто.

Выделяем целиком строку чуть ниже таблицы кликнув на ее порядковом номере. Потом жмем Ctrl+Shift+стрелка вниз. Выделилось все. Правой кнопкой мыши кликаем и выбираем "Удалить".

Может даже ругаться, что недостаточно памяти для операции и разрешить сделать ее без возможности отката. Соглашаемся. Удаляет. Обычно не быстро, а подумает. Сохраняемся. Закрываем и открываем файл и видим, что ползунок скролла теперь ведет к низу таблицы. А размер файла из 30 Мб, стал 3,5.


С горизонтальной промоткой такого мне не попадалась, но думаю всякое может быть.



2.

Второй случай - скрытые объекты. Типа рисунков прозрачных. Увидеть их невозможно, только если в нужном месте кликнуть, подсвечивается рамочка, как при работе с картинками.

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

После определенного роста количества этих объектов работать с файлом становится трудновато из-за тормозов. Да и размер файла растет.

Как и с первым случаем, все проверено на собственном опыте. До определенного момента никто и не мог понять, что творится с файлами и почему все тупить стало.  Откуда они взялись не понятно, может из инэта что-то в эксель копировали или еще как-то.


Но избавиться от этого не сложно.


Сначала проверим есть ли такое на листе. И да, проверять надо на каждом листе.

Для отображения скрытых объектов необходимо вызвать в меню Главная/ Редактирование/ Найти и выделить команду Область выделения.

Появится окошко "Фигуры на этом листе"  И если кроме Comment = примечаний ваших к ячейкам увидите кучу изображений или других объектов - то вот они ваши гады глюкодельные.

У меня в файле их было слишком много, больше тысячи. Поэтому по одному выделять не вариант.

Выделить ВСЕ объекты можно с помощью инструмента Выделение группы ячеек (Главная/ Найти и выделить). Переключатель установить на Объекты. Потом просто жмем кнопку Delete и ждем пока оно все удалит. Процесс в зависимости от скорости компа и количества объектов может быть не моментальный.


3.

Третий случай - скрытые имена.

Они не так сильно увеличивают размер файла. Но задалбывают при копировании/переносе листа в другую книгу сообщением, что найдено совпадающее имя, что с ним делать - использовать или переименовать. Зажимаешь Enter и ждешь пару минут пока пару тысяч таких имен автоматически переименует Эксель и можно будет дальше работать. Не забываем, что из пары тысяч из стало в два раза больше.


Кстати не забываем через вкладку "Формулы" зайти в Диспетчер имен и удалить там все, что не вы назначили. Просто чтоб его не было. Буквально вчера в присланном файле было неработающее имя с ссылкой на файл в папке с названием "Отчеты_2003"  . Т.е. оно там уже скоро как 10 лет висит бесцельно. Ладно хоть путь к файлу имел папки с приличными названиями, а не что-то типа "отчеты конченым заказчикам" или типа того.


Но скрытые имена через Диспетчер имен не удалить.

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


Макрос чтобы удалить скрытые имена в Excel

---------------------------------------------------------------------------------------------------------

Sub DeleteHiddenNames()
Dim n As Name
Dim Count As Integer
On Error Resume Next
For Each n In ActiveWorkbook.Names
If Not n.Visible Then
n.Delete
Count = Count + 1
End If
Next n
MsgBox "Скрытые имена в количестве " & Count & " удалены"
End Sub

---------------------------------------------------------------------------------------------------------

Создать макрос и запустить выполнение!

Порадовались , что 5000 скрытых имен было удалено. И файл на 1-2 Мб стал легче.


Инструкцию как пользоваться макросами давать не буду. Если не знаете - поисковик  в помощь. Все просто - ваша бабушка разберется.


4.

Четвертый случай.

Никаких глюков нет. Но надо сделать вес файла меньше. Ну мало-ли вдруг на дискету не влазит :)))


Делаем так.

Файл - Сохранить как - Двоичная книга Эксель.

Хоп.. волшебство - файл получится с расширением .xlsb и на больших файлах может стать на порядок легче, если не в два раза, то на 30-40% вполне (ну если в нем картинок не напихали, тогда поможет только их сжатие). И вроде как должен чуть шустрее открываться.



Если есть еще способы - пишите в комменты.

Показать полностью
153

Функции для новичка

СЧЁТЕСЛИ позволяет подсчитать количество ячеек, соответствующих указанному условию.

СЧЁТЕСЛИ(диапазон; критерий)


• Диапазон — диапазон ячеек по которым необходимо выполнить подсчет;

• Критерий — условие, определяющее какие ячейки нужно подсчитать. Условие должно быть в виде числа, ссылки на ячейку, выражения и т.д.


Пример использования:

Предположим у нас есть данные по продажам продуктов в магазине.

Подсчитаем количество категорий продуктов, относящихся отдельно к овощам и фруктам (критерий №1 в нашем примере).


В качестве диапазона выбираем ячейки A2:A13 (категория продукта) и задаем критерий подсчета F3 («Овощи»)

Функции для новичка Microsoft Excel, Таблица

РАНГ возвращает позицию числа в отсортированном списке чисел.

РАНГ(число; ссылка; порядок)
• Число (обязательный аргумент) — значение, для которого определяется ранг;

• Ссылка (обязательный аргумент) — массив или ссылка на список чисел, не числовые значения при этом в ссылке игнорируются;

• Порядок (необязательный аргумент) — число, определяющее способ упорядочения:

Если порядок равен 0 или опущен, то список определяется как отсортированный по убыванию.

Если порядок — любое число кроме нуля, то список определяется как отсортированный по возрастанию.

Пример работы формулы приведен на картинке ниже.

Функции для новичка Microsoft Excel, Таблица

https://t.me/hacks_excel/1974

1743

ВСЁ о сводных таблицах с нуля за полчаса

На позапрошлой неделе снимал получасовое видео о сводных таблицах в Excel. Тогда не решился выкладывать его на Пикабу, так как подумал, что плохо зайдёт (переводить все 30 минут видео в формат поста точно не охота, а закинуть лишь видео не решился, так как думал, что такой пост не будет особо хорошо принят). Тем не менее, видео-продолжение о построении дашбордов зашло на ура, так что сейчас также делюсь видеоуроком о всех особенностях работы со сводными таблицами с нуля:

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


Приятного просмотра! 😊

81

Горячие клавиши Excel. Навигация

• Переход на границу текущей области данных в направлении стрелки: — CTRL + → (← / ↑ / ↓)


• Переход к ячейке, расположенной в начале листа: — CTRL + HOME


• Переход к самой нижней правой ячейке листа, которая когда-либо содержала данные: — CTRL + END


• Возврат к активной ячейке при прокрутке: — CTRL + BACKSPACE


• Отображение окна Переход: — F5


• Отображение окна Найти и заменить с выбранной вкладкой Найти: — CTRL + F


• Отображение окна Найти и заменить с выбранной вкладкой Заменить:— CTRL + H


• Повтор последнего поиска из окна Найти и заменить: — SHIFT + F4


• Сдвиг на один экран вниз (вверх) по листу:— PAGE DOWN (PAGE UP)


• Сдвиг на один экран вправо (влево) по листу: ALT + PAGE DOWN (PAGE UP)


• Переход на одну ячейку вправо (влево): — TAB (SHIFT + TAB)


• Переход в начало строки или листа: — HOME


• Включение или выключение режима перехода в конец, в котором с помощью стрелок можно перемещаться к следующей непустой ячейке этой же строки или столбца: — END


Телеграм канал, для новичков! - https://t.me/joinchat/og7xI9fRFqNmZWZi

21

Нужна помощь в написании VBA

Не обессудьте. Я в Exel не силен.

При попытке написания макроса в VBA формула "Если" или "iif" ведет себя немного неясно.

По факту нужно, что бы макрос копировал вывод одной формулы и вставлял ее текстовое значение в первую пустую ячейку "календаря"

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

Раньше никогда проблем не было с формулами в самом екселе, но с макросами еще мало знаком. Формула приведена пониже:

Нужна помощь в написании VBA Microsoft Excel, Помощь, Vba

"

Sub Копирование()

Range("I5").Select

Selection.Copy

Formula = IIf("B3" < "0", Range("B3").Select, IIf("C3" < "0", Range("C3").Select, IIf("D3" < "0", Range("D3").Select, "0")))

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

End Sub

"

Нужна помощь в написании VBA Microsoft Excel, Помощь, Vba
84

Горячие клавиши Excel. Книга

• Создание новой книги: CTRL + N


• Вставка нового листа: SHIFT + F11


• Сворачивание активного окна: CTRL + F9


• Закрытие текущей книги: CTRL + F4


• Закрытие приложения Excel: ALT + F4


• Перемещение на лист слева (справа) от текущего: CTRL + PAGE DOWN (PAGE UP)


• Выделение текущего листа и листа слева (справа): CTRL + SHIFT + PAGE DOWN (PAGE UP)


• Переключение на окно следующей книги: CTRL + TAB


• Переключение на окно предыдущей книги: CTRL + SHIFT + TAB


• Переключение точки ввода между листом, лентой, областью задач и элементами управления масштабом: F6


• Перевод окна из полного режима в промежуточный: CTRL + F5


• Восстановление или перевод в полный режим выбранного окна: CTRL + F10


Телеграм канал, для новичков! - https://t.me/joinchat/og7xI9fRFqNmZWZi
102

Горячие клавиши Excel. Выделение

• Выделение текущей области: CTRL + A


• Выделение текущей строки: SHIFT + ПРОБЕЛ


• Выделение текущего столбца: CTRL + ПРОБЕЛ


• Выделение диапазона от текущей ячейки до начала (конца) листа: CTRL + SHIFT + HOME (END)


• Выделение строки от текущей ячейки до первого столбца: SHIFT + HOME


• Переход в режим выделения и выход из него: F8


• Добавление к выделению несмежных ячеек или диапазона при помощи стрелок: SHIFT + F8


• Расширение выделения до конца текущей области данных в направлении стрелки: CTRL +

SHIFT + → (← / ↑ / ↓)


• Расширение выделения на одну строку или столбец в направлении стрелки: SHIFT + → (← / ↑ 

/ ↓)


• Расширение выделения на один экран вниз (вверх): CTRL + PAGE DOWN (PAGE UP)


• Выделение текущей области вокруг активной ячейки: CTRL + SHIFT + *


• Попеременное указывание углов выделенного диапазона активными ячейками: CTRL + /


• Перемещение активной ячейки вниз (вверх) по выделенному диапазону: ENTER (SHIFT + ENTER)


• Перемещение активной ячейки вправо (влево) по выделенному диапазону: TAB (SHIFT + TAB)


• Отмена выделения диапазона и переход в активную ячейку: SHIFT + BACKSPACE


• Выделение текущего и предыдущего (следующего) листов: CTRL + SHIFT + PAGE UP/DOWN


• Выделение всех ячеек с примечаниями: CTRL + SHIFT + O


• Выделение от положения курсора до начала (конца): CTRL + HOME (END)


• Выделение слова слева (справа) от курсора: CTRL + SHIFT + ← (→)


• Выделение символов слева (справа) от курсора: SHIFT + ← (→)


Телеграм канал, для новичков! - https://t.me/joinchat/og7xI9fRFqNmZWZi
Показать полностью
1074

Как создать Дашборд в Excel

Знаю, что хорошо заходят посты, имеющие определённое количество текста/картинок. Тем не менее, создание дэшбордов в Excel – эта такая тема, которую уместить в несколько картинок и листов текста ну очень сложно! А поскольку поделиться еще одним из вариантов создания дэшбордов всё-таки очень хочется, решил поделиться в этом посте информацией в формате видео:

Что рассмотрено в видео:

• как создавать интерактивные дэшборды в Excel со сводными и не только диаграммами на основе сводных таблиц

• оптимальная структура рабочей книги для дэшборда

• подход в создании дэшбордов для их долгосрочного использования и развития (разработка отдельных деталей дэшборда на отдельных листах)


Приятного просмотра! 😊

137

Как копировать информацию между книгами Excel?

Копировать информацию между книгами Excel очень просто. Можно даже целиком перемещать целые листы. Но будьте внимательны при выполнении этой операции. Помните, что вместе с листом "переезжают" не только данные на нем, но много чего еще: именованные диапазоны, числовые форматы, стили ячеек...


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

Я создал телеграм канал, для новичков! - Excel | Эксель

Мои подписки
Подписывайтесь на интересные вам теги, сообщества,
пользователей — и читайте персональное «Горячее».
Чтобы добавить подписку, нужно авторизоваться.
Отличная работа, все прочитано!