Как сделать макросы в ворде

от admin

Пишем макросы для Microsoft Word like a PRO [Часть 1]

Возможно, у вас есть ощущение, что тема макросов в Ворде достаточно маргинальная. Кто ими может пользоваться-то вообще? Ну, малварь делают иногда. Да и пишутся они на давно забытом VBA (Visual Basic for Applications, он же несколько урезанный Visual Basic 6 в интерпретируемом виде), фу!

Но на самом деле у многих ведь возникает потребность то какой-нибудь отчётик в ворде написать, то курсовую оформить, то резюме перед отправкой в компанию вашей мечты подправить. А у некоторых работа напрямую связана с Word. Часто различные системы документации предлагают экспорт в форматы doc или docx, которые нужны вашим заказчикам. И бывает, что документы после экспорта выглядят фигово, приходится их исправлять.

Работа в ворде нередко подразумевает выполнение каких-то однообразных повторяющихся действий, которые иногда (но далеко не всегда!) решаются грамотной настройкой стилей и их применением, а также использованием шаблонов. Как же автоматизировать всё остальное? Тут-то нам на помощь приходят те самые макросы.

Что же в них такого хорошего? Ну, например, они автоматически и достаточно быстро выполняют за вас однообразные действия. Могут что-то подсчитать, переформатировать документ, пометить аннотациями подозрительные места, — словом, всё, что запрограммируете. Могут даже в режиме реального времени что-то исправлять и о чем-то предупреждать, пока вы пишете документ. VBA в Word позволяет автоматизировать практически все действия, которые вы можете выполнить с документом вручную.

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

Макросы работают в любой версии Word и требуют минимум правок при переносе с одной версии на другую (а чаще всего вообще не требуют). На макросах можно даже реализовать полноценный пользовательский интерфейс с формами!

Давайте же занырнём в Visual Basic и напишем что-нибудь полезное! В качестве первого примера я покажу, как сделать макрос, который заменит два и более последовательных перевода строки на единственный. Это часто требуется при исправлении документов после экспорта из систем документации, или если вы хотите удалить случайно проставленные лишние переводы строк в собственноручно написанном документе. Макрос сделаем добротный, с пользовательским интерфейсом и прогрессом выполнения операции.

Чтобы начать писать или использовать макросы, сначала требуется убедиться, что в Word’е отображается панель «Разработчик» («Developer»). Если она у вас не отображается, следует зайти после создания нового документа в меню «Файл» («File») -> «Параметры» («Options») -> «Настроить ленту» («Customize Ribbon»), после чего найти там и установить флажок «Разработчик» («Developer»).

Enable Word developer tab

После этого нужно зайти на вкладку «Разработчик» и выбрать меню «Visual Basic».

В открывшемся окне слева вы увидите два проекта: «Normal» и проект, относящийся к текущему открытому документу. Возможно, в проекте «Normal» у вас уже будет какой-то файл в каталоге «Modules». В любом случае, создайте новый модуль, кликнув правой кнопкой по проекту «Normal» и выбрав «Insert» -> «Module».

Word insert new module

Созданный модуль представляет из себя файл, куда мы и будем писать код макросов. Можно переименовать модуль (по умолчанию его имя будет «Module1») в окне «Properties» -> «Name». Я назову свой модуль «AllMacros». Теперь откроем код модуля, дважды кликнув по его имени, и приступим к созданию макроса. Напомню, что наша цель — заменить два и более последовательных перевода строки на единственный, произведя замены по всему документу. Очевидно, нам потребуется функция, которая осуществляет поиск по тексту, ведь мы хотим найти несколько последовательных переводов строки. В Word это эквивалентно началу нового параграфа. Вы могли бы осуществить поиск начала нового параграфа через обычное окно поиска, введя в поле поиска ^p , ^13 или ^013 (что соответствует ASCII-коду перевода строки). Функция поиска будет выглядеть так:

Что такое макрос в ворде и как им пользоваться?

Приветствую на Fast-Wolker.ru!! В сегодняшнем выпуске продолжим знакомство с созданием макросов уже в приложении Microsoft Office Word. Все знакомы с ним; многим приходится набирать документы в этой программе.

Документы чаще всего имеют одну и ту же структуру — мы берем шаблон правим его так как нам надо в одних и тех же местах — меняем даты, имена, форматируем текст.

То есть мы каждый раз делаем одни и те же операции с текстом, и чтобы их не делать каждый раз — можно заставить компьютер совершать их автоматически. Для этого в МS Word можно применять макрокоманды (или макросы) которые вы самостоятельно записываете в виде программы на языке VBA, который встроен в Word.

Что такое включенные макросы в Ворд?

А сейчас разберемся подробно, что за «макросы», как их включать. Начнем изучение на примере Office Word 2007, так как для многих он по прежнему остается самым привычным пакетом. Включать макросы нужно через меню «Файл» -«Параметры Word».

Дело в том, что настройки макросов в программе по умолчанию выключены, либо заданы такие настройки безопасности, что работать с полноценно с макрокомандами Вы не сможете. Когда Вы создаете макросы, Вы по сути становитесь программистом.

Можно не только самому их писать, но и находить уже готовые. Среда VBA позволяет работать не только в пределах MS OFFICE. Можно создавать полноценные программы, которые получают доступ системным файлам на компьютере, можно нанести вред. Этим пользуются злоумышленники.

Включаем первую настройку на ленте. Она сделает видимой вкладку «Разработчик» и позволит работать с макрокомандами и запускать редактор VBA:

Следующая настройка отвечает за безопасность. Здесь же, переходим в «Центр управления безопасностью»..

…»Парамеры центра» отвечает за запуск наших будущих программ. Вы можете настроить так как нужно вам. Настройка «Доверять доступ к объектной модели VBA» позволит пользоваться уже готовыми проектами VBA, например скачанными из Интернет.

Сторонние макрокоманды и проекты VBA перед запуском всегда проверяйте на вирусы!

Стабильный MS Office 2007 морально устарел и поддержка его прекращена. Нужно уметь включать режим разработчика и в поздних версиях. Они более функциональны и для серьезной работы лучше использовать их. В Word 2016 включаем вкладку «Разработчик». Для этого так же в меню «Файл» переходим в «Параметры» и затем «Настройки Ленты»:

Не забываем сделать настройки безопасности так как делали до этого. Теперь, когда все настройки сделаны можно работать далее.

Что такое макросы в Ворде и как с ними работать?

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

Но Вы получаете возможность изучать язык, если вас это дело увлечет. Создание макросов — это введение в программирование. VBA позволяет создавать для себя мощные инструменты при работе с текстовыми и табличными документами для решения многих задач в привычном виде .

Тем, кто после прочтения статьи заинтересуется и захочет начать изучать язык VBA самостоятельно в помощь книга.

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

Чтобы понравившийся документ после распечатывания стал полноценной привычной брошюрой — нужен макрос. А точнее написанный в VBA программный код, он вам и позволит распечатать ваш документ в виде брошюры, в которой будет правильное расположение текста и нумерация страниц.

Эту программу для ознакомления качаем тут. Вам останется распечатать и сшить брошюру и вот у вас книга готова ��

Но чаще всего мы используем макросы на работе при составлении документов. Нужно форматировать текст, менять его размер, менять даты, имена на другие. Это ответственно и занимает время. И здесь наши знания могут очень пригодится.

Для начала покажу демонстрационный пример — как работает макрос. У нас есть шаблон договора, который нужно подготовить для заполнения. Задача: открыть документ, убрать ненужные нам элементы из текста автоматически:

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

Указываем имя нашего макроса (без пробелов), доступ делаю из шаблона Normal.doth. Такой выбор позволит запускать выполнение нашей макрокоманды из любого документа Word.

Назначать макрос можно кнопке на панели инструментов или вызвать нажатием сочетания определенный клавиш, но мы этого делать пока не будем. Просто нажмем на «OK» и начнется запись наших действий. Предлагаю посмотреть на видео, что получилось, это будет нагляднее.

Мы сделали самую простую операцию — замену текста во всем документе. Но, поизучав язык можно пойти и далее — отформатировать текст, сделать форму, в которой указываются все необходимые данные договора (даты, номер, ФИО директора, должности, наименование организации, реквизиты и т .д.).

При выполнении макроса все эти данные заполнялись бы автоматически после указания в форме в нужных местах. По опыту знаю ошибок будет меньше при таком заполнении и времени уходит меньше.

Что такое макрос в ворде 2007? Формула из Excel таблицы

Многие интересуются — как вставить формулы Excel в таблицу Word? Excel хорош при вычислениях но не удобен для работы с текстом, а таблицы Word не так привычны после работы с Excel.

Туда нельзя вставить формулы как в Excel, но можно вставлять таблицу Excel путем копирования или создания таблицы прямо в документе Word. Для этого переходим в меню «Вставка»:

Далее, «рисуем» таблицу так, как мы делаем это в Excel:

Создавать Excel таблицу в Word с помощью макроса вышеописанным способом не получится — нужны дополнительные усилия. А что касается обычной Word таблицы — можно записывать макросы в случае создания сложных макетов таблиц.

Можно попробовать записать создание таблицы в макрос любым из этих способов и посмотреть что получится. Лично я таблицы копирую прямо из Excel, а макросы записываю в Office 2016 — там мне удобнее работать со стилями и оформлением. Удачи в освоении программы!

Использование макросов в Microsoft Office

Вы работаете в приложениях пакета Microsoft Office и периодически выполняете повторяющиеся задачи? Любая последовательность команд может быть автоматизирована и сведена к выбору пункта меню или нажатию комбинации клавиш. Для этого используются макросы, которые в точности повторяют цепочку ваших действий и тем самым экономят время. Макросы создаются на языке программирования VBA, но совсем не обязательно быть программистом, чтобы написать собственный макрос. Как это делается в приложениях MS Word и Excel, мы и рассмотрим в данной статье.

Концепция макросов

Использование макросов в Microsoft Office
Рис. 1. Главное окно библиотеки

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

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

Технология макросов поддерживается большинством профессиональных программных продуктов, среди которых: AutoCAD, Adobe Photoshop, 3D Studio Max, Microsoft Office и др.

Поддержка макросов в Microsoft Office

MS Office предлагает два способа создания макропрограмм: непосредственно ввод ее текста (процедуры VBA) в редакторе VBA либо применение встроенного средства записи. Первый вариант рассчитан на опытных пользователей, программистов или интеграторов и позволяет создавать полнофункциональные надстройки, функции и модули. Второй, напротив, необычайно прост и предназначен для новичков, не требует знания принципов программирования и синтаксиса команд VBA.

Использование макросов в Microsoft Office
Рис. 2. Создание фотогалереи для Web-сайта

Автоматическое создание макросов осуществляется, подобно записи на обычный магнитофон, только вместо звука фиксируются нажатия клавиш и действия мыши. Последовательность следующая: включить запись, произвести все операции, которые должен будет выполнять макрос, и остановить запись. Предварительно макропрограмме необходимо дать уникальное имя, описание (необязательно) и указать параметры сохранения – они несколько отличаются в различных приложениях MS Office, но в общем случае их два: сохранение макроса в текущем документе (в других он будет недоступен) либо в собственной библиотеке макросов или шаблоне (станет доступен для всех файлов в этом приложении). Библиотека макросов может быть перенесена на другой компьютер и подключена к соответствующему приложению MS Office, а макропрограмма, сохраненная в файле, копируется и переносится вместе с ним.

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

При записи автоматически генерируется текст макропрограммы – процедура VBA. Желающим научиться самостоятельно создавать более мощные и гибкие макросы непосредственно в редакторе будет очень полезно изучить последовательность сгенерированных команд VBA. Для этого нужно нажать сочетание Alt+F8, выбрать из списка соответствующий макрос и нажать кнопку Изменить.

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

Макросы для Microsoft Word

В MS Word макросы можно использовать для форматирования объектов (таблиц, рисунков и т. д.), указания различных настроек для вывода текущего документа на печать, преобразования документов, созданных в других текстовых редакторах, выполнения различных действий с выделенными данными и прочих операций.

Рассмотрим простой пример. Его оценят многие пользователи, хотя бы раз работавшие с текстами в Word. Часто случайно при наборе или после сканирования и распознавания в тексте появляются лишние пробелы между словами. Даже в малом фрагменте их удаление вручную займет много времени. С помощью диалогового окна поиска и замены это можно выполнить в 6–7 кликов мышью и вводом небольшого текста. Созданный макрос способен заменить все совпадения двух и более стоящих подряд пробелов одним нажатием сочетания клавиш.

Последовательность действий в этом случае следующая:

  1. В MS Word 2007 перейдите на вкладку Вид, найдите меню Макросы, нажмите в нем раскрывающееся меню Макросы, после чего выберите команду Запись макроса, как показано на рис. 1. Для MS Word 2003: Сервис -> Макрос -> Начать запись…
  2. В появившемся диалоговом окне Запись макроса введите имя создаваемой макропрограммы. Оно должно быть уникальным, отражать смысл макроса и не содержать пробелов. Назовем наш макрос ЛишниеПробелы. В графе Макрос доступен для выберите место сохранения – для всех документов либо только для текущего. Выбираем первый вариант. Далее в графе Описание вкратце укажите, для чего предназначен макрос.
  3. После этого в том же диалоговом окне нажмите одну из кнопок Назначить макрос кнопке (панели для версии 2003) или Назначить макрос клавишам. При выборе первого варианта откроется окошко, из которого в MS Word 2003 название данного макроса можно перетащить на панель инструментов или на любое меню (сделать его пунктом этого меню), а работая в Word 2007, нажав кнопку Добавить, можно поместить вызов макропрограммы в панель быстрого доступа. Если же вы предпочитаете запускать макрос сочетанием клавиш, выберите второй вариант, укажите желаемую комбинацию и нажмите OK. Назначим нашему макросу сочетание клавиш Ctrl+Alt+Пробел.
  4. Запись начата. Теперь вызываем диалог Найти и заменить. Для этого на вкладке Главная в меню Редактирование нажимаем кнопку Заменить. Для 2003 версии: Правка -> Заменить…
  5. В окне Найти и заменить в поле Найти пишем: «<2;>». Эта запись означает – искать 2 или более пробелов подряд. А в графе Заменить на ставим один пробел. После этого нажимаем на кнопку Больше для указания особых параметров поиска. Укажите Направление – везде и снимите галочки со всех опций, кроме Подстановочные знаки. Если эта опция не была установлена, выберите ее. Параметры замены должны быть указаны, как на рис. 2, затем нажмите кнопку Заменить все.
  6. После того как будет выдано сообщение о результатах замены, нужно остановить запись макропрограммы. Для этого нажмите на кнопку Остановить запись (значок- квадратик), которая находится в строке состояния, если вы работаете в Word 2007, и Сервис -> Макрос -> Остановить запись для Word 2003.

Макрос записан. Теперь по нажатии комбинации клавиш Сtrl+Alt+Пробел из текущего документа будут автоматически удаляться лишние пробелы.

Макросы для Microsoft Excel

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

В MS Excel запись, сохранение и быстрый запуск созданных макросов осуществляется подобно тому, как это делается в Word. Рассмотрим несколько примеров, с которыми встречаются пользователи Excel.

Иногда при вводе длинного заголовка таблицы, изменении и пересчете значений и подобных операциях некоторые данные перестают помещаться в ячейках. Вследствие этого в зависимости от версии и текущих настроек Excel текст будет перекрывать соседние ячейки или «прятаться» под ними, если же вводятся числовые данные – вместо цифр вы можете увидеть набор символов #####. Хотя недолго и вручную настроить автоподбор ширины, в случае периодического повторения ситуации лучше создать соответствующий макрос для автоматического выполнения данных действий. Для этого необходимо:

  1. Создать новую книгу или открыть существующую. Описанным выше способом задайте имя, сохранение в личной книге макросов (не только для текущей книги), комбинацию клавиш (по желанию) и начните запись макроса.
  2. Нажмите сочетание клавиш Ctrl+Ф для выделения всех ячеек листа. На закладке Главная в меню Ячейки нажмите кнопку Формат и в меню выберите команду Автоподбор ширины столбца (если вы работаете в 2007 версии MS Office) либо выполните команду Формат -> Столбец -> Автоподбор ширины (для MS Excel 2003). Поставьте курсор снова в ячейку А1 для снятия выделения.
  3. Остановите запись (идентично остановке записи макроса в Word).

Часть пользователей применяют автоформат для быстрого создания таблиц. Наверняка у каждого из них есть свои, наиболее часто используемые стандартные или созданные стили автоформата. Если их несколько, запишите для каждого макрос, назначьте сочетания клавиш или задайте кнопки в панели быстрого запуска. Теперь создание, разметка и применение стилей к таблице будут сведены к выделению нужного диапазона ячеек и вызову соответствующего макроса. Данный пример актуален и для применения автоформата к таблицам в Word.

Многие пользователи выводят на печать не весь документ целиком, а только необходимый фрагмент. Сделайте для этого макропрограмму. Выделите фрагмент, начните запись макроса, проделайте необходимые операции вручную и остановите запись. Впоследствии вам нужно будет только выделить фрагмент и запустить соответствующий макрос (его можно создать как в Word, так и в Excel).

Если вы заметили, что в используемом приложении MS Office периодически выполняете одну и ту же последовательность операций, приступайте к написанию макроса. Этим вы сэкономите свое время, не будете отвлекаться на рутинные операции и сосредоточите внимание на более важных задачах.

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

Макросы и безопасность

Несколько советов пользователям, применяющим макросы:

  1. Настройте свою антивирусную программу на фоновую проверку документов MS Office, содержащих макросы (во многих антивирусах установлено по умолчанию).
  2. Выбирайте опцию Отключить макросы при открытии документов с макросами, загруженных из Интернета или полученных из сомнительных источников.
  3. Без особой необходимости не изменяйте настройки по умолчанию, касающиеся макросов и безопасности, в приложениях MS Office.

Установка рекомендуемых настроек для Word или Excel 2007: кнопка Office -> Параметры Word Excel -> Центр управления безопасностью -> Параметры центра управления безопасностью -> Параметры макросов, выберите опцию Отключить все макросы с уведомлением. Для пользователей предыдущей версии: Сервис -> Параметры -> Безопасность -> Защита от макросов выберите степень защиты Средняя или Высокая.

Основы программирования в Microsoft Word. Работа с макросами ⁠ ⁠

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

Основное меню для работы с макросами расположено в «Вид – Макросы».

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Как записывать макрос мы разбирать не будем, потому что это слишком просто и описано уже миллион раз. Вместо этого мы будем учиться писать макросы самостоятельно.

Макросы в MS Word пишутся на упрощенной реализации языка Visual Basic – VBA

или сисярпе. В данном уроке мы написание макросов на сисярпе разбирать не будем – я этого языка попросту не знаю, т. к. не питаю особенно теплых чувств к разработкам Microsoft.

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

1. Для вставки нумерации рисунков и таблиц (бывает полезно, когда приходится оживлять чужой документ, набранный на печатной машинке производства Microsoft);

2. Для вставки подписей к рисункам и таблицам вида «Рисунок 1 – » и «Таблица 1 – »;

3. Для вставки ссылок на нумерацию рисунков и таблиц вида «°Рисунок, «°Таблица, где перечеркнутый текст имеет тип «hidden», то есть мы автоматизируем то, что делали вручную в статье «Учимся работать в Microsoft Word правильно. Работа с рисунками».

Велик соблазн хранить все макросы в отдельном шаблоне global_macros.dotm, как это описано здесь. Но, как выяснилось, работает это только в MS Office for MAC.

Под Windows, после переноса файла global_macros.dotm в папку STARTUP (C:\Documents and Settings\<>\Application Data\Microsoft\Word\STARTUP),

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Настроек, подобных «Личные параметры – Расположения файлов» в Microsoft Word 2013 for Windows я не обнаружил (возможно, это уже реализовано в MS Word 2016 или 365). Поэтому, в качестве более универсального решения, я рекомендую добавлять макросы в базовый шаблон Normal.dotm с помощью редактора Microsoft Visual Basic for Applications, который открывается из MS Word с помощью комбинации клавиш «Alt + F11».

Из-за проблем с кодировкой копировать код с русскими буквами нужно только при включенной русской раскладке.

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

Итак, с помощью контекстного меню «Insert – Module» к шаблону «Normal» добавляем новый модуль, в который мы будем копировать скрипт.

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

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

Теперь настроим горячие клавиши для запуска макросов.

Для этого переходим в «Файл – Параметры – Настроить ленту – Сочетания клавиш: Настройка. »

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

В данном примере мы теперь можем добавить подпись к таблице комбинацией клавиш «Ctrl + Shift +ю».

Теперь разберем три из шести написанных макросов для рисунков (макросы для таблиц абсолютно аналогичны).

В принципе, программирование на бейсике особо ничем не отличается от программирования на остальных языках. Современный бейсик похож на Python и Ruby тем, что в нем используются отступы. Комментарии (неисполняемые строки) начинаются с одинарной кавычки.

Как я уже упоминал, процедура в VBA начинается со слова Sub, и заканчивается End Sub.

Переменная объявляется с помощью команды Dim, значение переменной устанавливается с помощью команды Set.

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

Писать скрипты можно непосредственно в редакторе Microsoft Visual Basic for Applications (он «на лету» исполняет скрипт и показывает ошибки), но мне для демонстрации проще делать это в текстовом редакторе Notepad++.

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Опишем скрипт InsertImageSequence.bas (вставить номер рисунка).

В целом для написания собственных скриптов вам понадобится научиться работать с полями и текстом.

Логика написания скрипта такая:

1. Нам нужно добавить поле, которое выводит номер последовательности. Посмотреть вид этого поля можно в контекстном меню «Коды / значения полей», кликнув по полю, полученному традиционным способом, правой кнопкой мыши;

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

2. Далее необходимо указать место, в которое мы хотим вставить текст / поле. В данном случае это текущее местонахождение выделения / курсора. Все основные операции с текстом в VBA замечательно описал Биллиг Владимир Арнольдович, и для понимания работы с объектами Range и Selection, которые мы будем использовать, я рекомендую прочитать его статью;

3. Необходимо в выделение добавить поле с присвоенным ему типом (в данном случае SEQ). Для этого мы будем использовать метод Add, описанный в документации Microsoft. Как обозначаются типы полей в скриптах описано здесь. В данном случае нам необходимо узнать, как обозначается в скрипте тип поля SEQ (wdFieldSequence), чтобы указать его в качестве параметра Type метода Add. Также необходимо указать параметры, которые мы посмотрели в пункте 1.

В итоге у нас получается что-то типа этого

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Элементарно. Здесь просто добавились некоторые методы из статьи Биллига для добавления текста до и после поля.

Наконец, рассмотрим скрипт InsertRefToImage.bas (добавить ссылку на изображение).

Основы программирования в Microsoft Word. Работа с макросами Microsoft Word, Длиннопост, Текст, Программирование, Макрос, Обучение

Что использовалось для написания последнего скрипта:

Все эти замечательные рецепты ищутся в обыкновенном google по запросу, начинающемуся на «word macro» или «word vba».

В следующей статье мы рассмотрим основные правила типографики и работу со списком литературы в MS Word.

давным-давно работал в мособлсуде в гражданской канцелярии. По четным дням слушались наши дела и надо было готовить их к слушанью и в том числе печатать списки для граждан — в каком зале что слушаться будет.
Так вот, было 5 списков, которые печатали я и 4 девчонки, они состояли из 50-90 табличных строк, в которых на 5 составов поделены 53 районных суда, около 300 фамилий судей, ФИО истца и ответчика и краткая суть заявления в одно предложение.
Этих сутей (типа о возмещении ущерба, разделе наследства, восстановлении на работе и т.д) десятка три. И в среднем по 2-15 дел из каждого города в списке.
Так вот, я заебался каждый раз одно и то же печатать и внес все фамилии судей своего состава, все свои города и все типы заявлений в автозамену. Щёл пишешь — превращается в Щёлково, Троф — в судью Трофимову, преп — о нечинении препятствий в пользовании. и так далее. Заодно то же самое я сделал для девок с их городами и судьями. Печатанье списка у меня ускорилось раз в 5, если не больше.
Так что ты думаешь? Не смотря на мои убеждения и личный пример ни одна овца не пользовалась этим, тупо продолжая десятки раз писать одно и тоже полностью.

А ты говоришь — макросы

кто бы сделал пост про макросы в либре офис? я либо тупой либо нихуя не могу понять их систему. тупизм какой то

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

1. На шарпе не пишут скрипты, только надстройки VSTO.

2. Через SET устанавливаются не значение, а ссылки на обьекты.

3. На счет невозможности редактирования кода через подключение надстройки.

А зачем вам этот функционал в работе с готовым скриптом?

п.с. Хотя решение и вправду спорное, тот же эксель позволяет это свободно делать.

4. Зачем вам 5-6 разных процедур, а не одна большая, которая будет делать все за 1 клик?

5. Не думали ввести публичную переменную, которая будет хранить номера рисунков. Дабы не вводить их постоянно при постепенном редактировании файла?

Ровно год назад я мечтал стать программистом. ⁠ ⁠

Я даже не представлял какие существуют направления в IT. Бэкенд, фронтенд, датасаенс — эти слова казались каким-то набором букв, значений этих слов я не знал.

10 марта 2022 года мне в личку постучался читатель с вопросом никак не связанным с IT. В конце сообщения он оставил подпись:

С уважением

<censored> Дмитрий.

<censored> Studio — Lead Producer

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

Год назад я был далек от разработки настолько, насколько я далек сегодня от космонавтики. То есть полный 0. Но, как оказалось, довольно перспективный ноль, ведь я прошел путь от нуля до первой работы разработчиком за 7,5 месяцев. И это реальное достижение, которым я горжусь. На своем пути я встретил замечательных людей, которые уже давно в разработке и которые не отказались мне помочь.

Прошел ровно год с того момента, как я задал вопрос «а как войти в IT». Сейчас я работаю Java-разработчиком, успешно прошел испытательной срок (тут подробнее об этом), получаю настоящее удовольствие от рабочего процесса, от условий работы и от общения с коллегами.

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

А вот то самое сообщение, которое стало судьбоносным для меня:

Ровно год назад я мечтал стать программистом. IT, Программирование, Профессия, Смена профессии, Обучение, Java

Мечтайте, действуйте, добивайтесь и не слушайте тех, кто в вас не верит! Всем мир)

Хороший Ютуб-канал по программированию Python для уровня посерьезнее, чем у моей аудитории⁠ ⁠

Мне многие пишут про то, что я в материалах о программировании слишком простые вещи разбираю и надо бы что посложнее да поинтереснее. Но они не правы. Дело в том, что они не моя аудитория. Для такой аудитории, что уже получше да посильнее разбирается в программировании и кому хочется глубже в Python двигаться, есть другие авторы. Вот недавно наткнулся, очень много полезных материалов про тонкости, фишечки и т.д. Всем, кому актуально, подписываться на него на Ютубе и смотреть.

Ответ Lialin в «Попал»⁠ ⁠

Мамик сменила работу и ей потребовалось быстро освоитьWord (госструктура, для документов). А она вообще ни сном ни духом даже как комп включать, но там ее обещали научить (работать некому).

Живем давно порознь — звонит вся на нервах: я ничего не понимаю! Мне коллега обещала помогать на первых порах, показыватьчто и как делать, но ей почти некогда, а я не знаю как и на что нажимать чтобы точку поставить, запятую и вообще.

Я ей тут же: "Мам, спокойно, не переживай Подожди 15 мин, сходи перекури."

Набросала прямо с телефона в редакторе памятки и послала ей.
Говорит, это сразу избавило ее от большей части проблем — остались еще с оформлением текста, но это я ей частично лично показала, а частично ей на работе объяснили.

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

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

Ответ Lialin в «Попал» Технологии, Телефон, Мама, Компьютер, Старость, Microsoft Word, Обучение, Шпаргалка, Ответ на пост, Длиннопост

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

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

Сейчас смотрит Ютуб и рецептч в интернете, шлет мне какие-то роликт, постоянно на связи в мессенджерах и в Одноклассниках.
Вполне довольна. Главное психологически перешагнуть этот барьер первоначального неприятия из-за страха не понять.

Теперь пытаюсь провернуть этот фокус с отцом, но с ним сложнее. Смартфон использует, но чисто как звонилку. Показала ему Гугл Плей, где он нашел свои любимые нарды и покер. А сколько восторга было от того, что можно в приложении найти почти ВСЮ музыку, которую он только захочет! 🙂

Технологии облегчают и раскрашивают жизнь, давайте понемножку открывать мир прогресса для старшего поколения 🙂

Все бы тебе тараканов гонять по монитору, сын. #1⁠ ⁠

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

И ведь сделал бы. Вот только был ма-а-аленький нюанс, игр то я никогда ни делал, рисовать не умею, а знакомство с программированием ограничено 2-мя уроками Python на рандомном сайте, и десятком решеных задачек на Сodewars.

Чтож, решено. Открываю значит я урок 3, и что вы думаете? Урок 3: Пишем текстовый квест!

Ну вот же оно. Это ли не знак?

Так input(), print(), ну понятно погнали.

Все бы тебе тараканов гонять по монитору, сын. #1 Программирование, Gamedev, Обучение, Python, Разработка, Длиннопост

Значит что имеем:

Все бы тебе тараканов гонять по монитору, сын. #1 Программирование, Gamedev, Обучение, Python, Разработка, Длиннопост

Система боя с критами, блоком, скоростью атаки, уворотом, промахом. — чек
Генерация этажей/мобов — чек
Пассивные способности — чек
Активные способности — чек
Характеристики — чек.
Сохранение/Загрузка — чек
Генерация итемов разной рарности с модами — чек.
Магазин — чек
Состояния (горение, переохлаждение, шок, яд) — чек

Все бы тебе тараканов гонять по монитору, сын. #1 Программирование, Gamedev, Обучение, Python, Разработка, Длиннопост

Все бы тебе тараканов гонять по монитору, сын. #1 Программирование, Gamedev, Обучение, Python, Разработка, Длиннопост

Все бы тебе тараканов гонять по монитору, сын. #1 Программирование, Gamedev, Обучение, Python, Разработка, Длиннопост

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

Играние в игру преимущественно осуществляется посредством нажатия на кнопки принятия решений (зеленая и красная), в зависимости от принятого решения игрок получает очки «безумия» либо очки «хладнокровия». По достижению 20 очков получает статус «Берсерк» либо «Манчкин» соответственно. Каждый статус дает свои плюшки сам по себе (к примеру у Берсерка растет урон при падении хп, а Манчкин с некоторой вероятностью находит дополнительно золото на привалах), количество и качество которых растет с увеличением очков безумия либо хладнокровия. Так же пассивки получают разные бонусы в зависимости от вашего статуса и количества очков.

Бои проходят на автомате, единственное влияние это активные заклинания. У заклинаний имеется ощутимый кулдаун, который в половину величины распространяется на другие заклинания, к примеру «Восстановление» имеет кулдаун 16сек, и соответственно при касте уводит в кд другие скиллы на 8сек . Поэтому тут надо четко прикидывать что и когда кастовать. Алсо заклинания вместо маны жрут ресурс «осколки душ» который также является деньгами.

Все остальное это поиск билда и прокачка характеристик, выбор и прокачка пассивок, выбор активок, и подбор итемов под билд.

Чего не имеем:

Графониум — не чек. Непонятно будет ли. В целом идеи как это реализовать на киви есть, нет особо времени. Возможно займусь после того как закрою остальные моменты. В принципе все сообщения в окне боя: это вызовы опр. функции генерирующей сообщения, при желании можно в нее передавать запрашиваемую анимацию/спрайт.
Интерфейс — не чек.(30%)
Контент — не чек. (пока готовы 10 этажей с боссом)
Сюжетка — пока только в голове(не чек)

Что в планах:

Ограничить количество смертей до 10.
Сделать сохранение платным и доступным только в конце этажа. (цена этаж*20)
Сделать магазин доступным только в конце этажа.
Добавить кристаллы с рандомными перманентными усилениями в магазин, усиление роллится после активации, в момент покупки различаются только силой и ценой.
Добавить несколько активок вызывающих горение, переохлаждение, шок.
Добавить в генерацию предметов мод на +% урон к огню/яду и.т.д.
Добавить несколько пассивок работающих с состояниями.(шансы/сила/доп/эффекты)
Доделать меню создания персонажа(возможно добавить расы с бонусами)
Дорисовать интерфейс.
Окно характеристик, с подробной информацией о персонаже.
Окно развития навыков «Безумия» и «Хладнокровия».
Окно ачивок.(?)
Туториалы и подсказки.
Ладдер таблица(очень далекий план).

Циклы на Python «для тупых» часть 2.1. Цикл for⁠ ⁠

Как-то тяжело это видео далось, много что шло не так, но всё же вот оно 🙂

Ссылочки на меня:

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих⁠ ⁠

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Всем доброго времени суток! Так как о Data Science мы слышим всё чаще и чаще, предлагаю вам обзор книги, что будет полезна для начинающих.

Публикую обзор книги с моего телеграмм-канала IT-старт t.me/it_begin на книгу «Data Science.Наука о данных для начинающих».

Автор книги Джоэл Грас.

Стоит читать? Да! Почему? Опишу в статье.

Для кого эта книга?

Так как в названии фигурирует «Наука о данных с нуля» — не мудрено, что рассчитана она на тех, кто только начинает свой путь в Data Science 🙂

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Рис.1. Начальная страница

Что в самой книге?

Книга сама по себе немаленькая и состоит из 416 страниц.

Для того, чтобы имелась конкретика по размерам книги, производим замеры.

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Ширина книги составляет чуть менее 17 см.

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Рис.1.2. Размер книги

Высота книги составляет 23 см.

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Рис.1.3. Размер книги

Глубина книги составляет около 2 см.

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

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Глав достаточно много, это радует) Всего глав 27.

Далее предметно и главное кратко постараюсь рассказать о том, что полезного и интересного мы сможем найти в этой книге.

Глава 1. Введение

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Первая вводная глава начинается с подробного описания тезиса «Воцарение данных» и ответа на вопрос «Что такое наука о данных?».

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

Более всего понравился пример на странице 26 с Facebook, что думаю примененим ко многим плоскостям исследования, используя практические любые соц. сети.

Также хорошо подчеркнут опыт избирательной компании Барака Обамы в 2012 году и предвыборной компании Дональда Трампа. Предлагаю вам ознакомиться с данным отрывком.

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Рис.2.1. Глава 1, страница 26

Глава 2. Интенсивный курс языка Python

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

В данной главе автор на протяжении 30 страниц крайне в сжатом формате старается познакомить нас с языком программирования Python.

По моему мнению, вследствие того, что объяснение крайне поверхностное и имеет ограничение в виде 30 страниц, объяснено всё плохо. Для тех, кто вовсе не имел опыта работы с Python, данная глава, к сожалению, вряд ли поможет.

Как бы, претензий к книги по данному поводу у меня нет, но хотел бы, чтобы вы заранее имели это ввиду, что эта глава не является карманным пособием по Python.

Если вам необходимо изучить основы Python, советую книгу Тони Гэддиса «Начинаем программировать на Python с нуля» — мой обзор

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

В конце данной главы на странице 69мы видим две особенности книги.

Первая особенность — в конце каждой последующей главы вы увидите полезную сноску под названием «Для дальнейшего изучения», где автор от себя советует, что можно прочитать дополнительно для более глубокого изучения той или иной темы. Считаю это положительным моментом.

Отрицательным моментом качества данной книги являются тонкие страницы, что просвечивают и не доставляют особого удовольствия от этого.

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

Всё крайне показательно видно на фото выше.

Глава 3. Визуализация данных

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Также яркий пример просвечивающих страниц это столбчатый график, что просвечивает на странице 71)

В третьей главе автор кратко рассматривает библиотеку matplotlib,

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

Согласиться с этим или нет? Вопрос сложный и оставлю его открытым на суд аудитории. Интересно ваше мнение по этому вопросу.

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

Завершается глава разделом «Для дальнейшего изучения», где автор оставляет ссылки на такие библиотеки, как seaborn, Altair, D3.js, Bokeh с кратким описанием каждой из них.

Глава 4. Линейная алгебра

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

В этой главе автор рассматривает векторы и матрицы.

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

Глава 5. Статистика

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

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

В главе много кода, подробно всё описание, в целом впечатление от главы положительное.

Но также показалось интересным и хорошо запомнилось описание парадокса Симпсона 🙂

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Рис.6.1. Глава 5. Парадокс Симпсона

Глава 6. Вероятность

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

В этой главе рассмотрены:

Центральная предельная теорема

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

Глава 7. Гипотеза и вывод

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Хотел бы привести в пример «учаток» на странице 116, в подтверждение того, что без опечаток в этой книге не обошлось)

Теперь же о самой главе.

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

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Глава 8. Градиентный спуск

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

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

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

Градиентный спуск — это метод поиска локального максимума или минимума функции с помощью движения вдоль градиента.

Частично и достаточно понятно подход к максимизации функции описан на странице 128. (Рис. 8)

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

Глава 9. Получение данных

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Для того, чтобы исследовать данные, нужно сначала их собрать 🙂

В этой главе автор рассматривает способы подачи данных и также их последующее форматирование.

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

Глава 10. Работа с данными

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

В 10 главе автор рассматривает непосредственную работу с данными.

Рассматривается разведывательный анализ данных, классы данных, многочисленные размерности.

Мне же понравилось, что автор не забыл про «чистоту» данных.

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

Глава 11. Машинное обучение

В 11 главе автор знакомит нас с машинным обучением.

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

Описано в целом по делу всё, но нет уверенности, что люди, ранее не знающие ничего о машинном обучении, после прочтения данной главы всё усвоят.

Глава 12. k ближайших соседей

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

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

Теперь же о том, как всё это описывает автор на примере предсказания результатов на выборах

Глава 12. k ближайших соседей

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

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

Теперь же о том, как всё это описывает автор на примере предсказания результатов на выборах

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

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

Глава 13. Наивный Байес

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

Порадовало то, что в конце данной главы автор ссылается на статью Пола Грэма «План для спама». Статья 2002 г., но менее интересной от этого не становится.

Глава 14. Простая линейная регрессия

В 14 главе автор рассказывает о простой линейной регрессии, описывает применение градиентного спуска, производит оценивание максимального правдоподобия

Глава 15. Множественная регрессия

В данной главе автором рассматривается множественная регрессия, Расширенные допущения модели наименьших квадратов, подгонка модели и её дальнейшая интерпретация.

Глава достаточно большая и много познавательной информации имеет, но мне более всего понравилась трактовка интерпретации моделей

Глава 16. Логическая регрессия

Логистическая регрессия — статистический метод для анализа набора данных, в котором есть одна или несколько независимых переменных, которые определяют результат. Результат измеряется с помощью дихотомической переменной (в которой есть только два возможных результата). Он используется для прогнозирования двоичного результата (1/0, Да / Нет, Истина / Ложь) с учетом набора независимых переменных.

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

Более всего понравилось рассмотрение гиперплоскости, что разделяет параметрическое пространство

Глава 17. Деревья решений

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

Автором неплохо показано это на достаточно простом примере.

Глава 18. Нейронные сети

Нейронные сети — то о чём мы всё чаще слышим из средств массовой информации.

В данной книге глава это мягко не особо большая. Всего 10 страниц. Но достаточно информативная. Расскажет о том, что такое нейронные сети, перспептроны, как работают нейронные сети прямого и обратного распространения. Глава интересная!

Глава 19. Глубокое обучение

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

Возможно субъективно, но чтобы до конца понять все вещи в данной главе, пришлось прочитать её дважды. Но думаю, дело не в книге, а во мне 🙂

Глава 20. Кластеризация

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

Глава 21. Обработка естественного языка

В главе об обработке естественного языка автор рассказывает несколько приемов, такие как: облако слов, N-грамматические языковые модели, грамматики. Много поясняющего кода)

Глава 22. Сетевой анализ

В главе про сетевой анализ автор описывает центральность, ориентированные графы, алгоритм PageRank. Мне данная глава «понималась» крайне тяжело, вследствие чего параллельно приходилось заглядывать в Google.

Глава 23. Рекомендательные системы

Та тема, с которой мы ежедневно встречаемся, используя те или иные стриминговые сервисы, соц. сети, поисковые системы — рекомендации 🙂

Сказали рядом с телефоном «купил собаку» и видите контекстную рекламу о дизайнерских будках на заказ? Это Data Science 🙂

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

Глава 24. Базы данных и SQL

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

Глава 25. Алгоритм MapReduce

MapReduce — модель для выполнения параллельной обработки крупных наборов данных. Рассматривается работа самого алгоритма, какие его преимущества и чем он может быть полезен и рассмотренно на примере аналази аобновлений новостной ленты. Всё достаточно подробно описано, вопросов после главы остаётся не так уж и много.

Глава 26. Этика данных

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

Глава 27. Идите вперед и займитесь наукой о данных

Заканчивается вся книга главой с призывом идти вперёд и заняться Data Science.

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

Глава по своей сути прощальная между автором и читателем, автор же оставляет ту выжимку необходимых мыслей, что он хочет донести до каждого читателя для продолжения путешествия в мир Data Science.

Теперь, тезисно о плюсах и минусах книги

Плюсы книги:

На первом маркетплейсе цена не такая уж и народная.На втором же, ситуация куда бодрее.

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

Обзор книги "Data Science. Наука о данных с нуля", отличная книга для начинающих Программирование, Python, Программист, Обучение, Linux, Профессия, Data Science, Data, Обзор книг, Обзор, Книги, Длиннопост

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

2. Книга крайне ёмкая и обширная. О необъятной теме в объятной книге.

Рассматривается и Python и SQL и методы Data Scince, что и как работает. В рамках одной книги это более чем достойно. Да, временами книга может показаться поверхностной, но думаю, это исходя из ограничений книги. Чтобы написать подробный том о каждой теме, для производства книги потребовалось бы куда больше бумаги 🙂

Минусы книги:

1. Прозрачные страницы.

Не особо бросается в глаза, когда увлечены чтением, но и приятного в этом мало.

Думаю, на всех фотографиях страниц книг, что сделаны мною, это отчетливо видно. Страницы тонкие и просвечивают. Считаю, что это минус.

2.Иногда крайне сжато подаётся материал, что , не имея под рукой поисковика, трудно понять некоторые вещи. Данная оценка субъективна, но мне показалось именно так. Опять же, не уместить всё-всё в одну книгу, понимаю. Но иногда охото отстраниться от цифрового мира, увлечься чтением интересной книги и не прибегать к помощи персонального компьютера)

Подведение итогов по книге:

Могу посоветовать к прочтению данную книгу. Книга даст базовые знания о Data Science, что опять же позволит вам понять, нужно ли оно вам в принципе, интересно ли всё то, что связано с этой сферой.

P.S. К сожалению, в один пост на пикабу можно поместить не более 25 изображений. Мною сделаны фотографии каждой главы, но показать их в рамках ограничений пикабу не могу. Поэтому, если интересно, то можете прочитать полную версию на моем канале.

Благодарю вас за внимание!

Мой канал в телеграмм

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

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

Ссылка на бесплатную электронную версию книги https://t.me/it_begin/461

Также публикую обзоры книг и интервью на сайте https://russia-it.ru

EXCEL — ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО⁠ ⁠

Я решил с двух ног ворваться в тему макросов.

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

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

Первым делом нужно включить вкладку «Разработчик». По умолчанию в Excel ее спрятали, чтобы не взорвать мозг юзерам. Идем в Параметры -> Настройка ленты -> Основные вкладки -> Разработчик (поставить галочку).

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

Теперь идем в эту вкладку, нажимаем «Записать макрос» выбираем имя жмакаем «ок». Все, теперь любые действия в Excel надежным образом записываются.

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

Давайте теперь что-то сделаем. На пример поменяем заливку ячейки А1, в ячейку A2 напишем значение «Мама, я программист», а в ячейке А3 пропишем формулу текущей даты «=Сегодня()»

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

Останавливаем запись макроса. Нажимаем иконку «Макросы», выбираем наш макрос как мы его обозвали, нажимаем кнопку «изменить».

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

Появляется окно Microsoft Visual Basic for Applications. Кстати оно также вызывается комбинацией клавиш (Alt + F11) У меня почему-то вызывается только левым Altом, а правым нет, видимо намекая на то что для написания макросов лучше иметь 2 руки (хотя я и одной нажать могу). Появился редактор языка VBA – это язык, который написан специально под офис чтобы на нем писать макросы. В основном окне видим саму эту запись, которую автоматически сделал Excel.

Sub Макрос2()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range(«A2»).Select
ActiveCell.FormulaR1C1 = «Мама, я программист»
Range(«A3»).Select
ActiveCell.FormulaR1C1 = «=TODAY()»
Range(«A4»).Select
End Sub

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

Теперь давайте разбираться что делает этот макрос

Sub Макрос2()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With

(Весь этот кусок от начала говорит нам о том, что с тем элементом что был выделен ранее происходит некоторое дерьмо, в том числе изменение цвета. Вот там, где Color = 255. Все остальное это параметры заливки, которые по итогу не менялись, но макрорекордер решил их тоже записать, на всякий. Это связано с внутренними особенностями работы excel как я понял. Вообще привыкайте к тому что макрорекордер пишет много того что потом вообще можно удалить. Конструкция With – End With позволяет делать несколько действий с одним объектом, на пример выше берется объект Selection.Interior, то есть фон выбранной области и ряду параметров этой заливки назначаются конкретные значения. То есть With нужен для облегчения записи кода, чтобы Selection.Interior не писать вначале каждой строчки.

Range(«A2»).Select –выделяем ячейку «A2»
ActiveCell.FormulaR1C1 = «Мама, я программист» – пишем в ячейку значение
Range(«A3»).Select – выделяем ячейку «А3»
ActiveCell.FormulaR1C1 = «=TODAY()» –пишем в ячейку формулу
Range(«A4»).Select – зачем то выделяем ячейку А4.
End Sub

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

Тут стоит понимать, что половину того что записал макрос можно опустить, так как нам важен результат, а не путь по которому к этому результату пришли, а макрорекордер записывает именно путь. На пример вместо всей конструкции With можно записать

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

Range(“A2”).Value = ”Мама, я программист”

или писать формулу как в третей ячейке

С формулами и значениями лично мне не понятно, как excel их интерпретирует, но в макрорекордре он записывает любой ввод в ячейку как ввод формулы. Благо лично у меня при написании макросов не возникает необходимости писать формулы в ячейки. На пример вместо вставки формулы как это было выше можно написать Range(“A3”).Value = Date(), тогда макрос вставит сразу текущую дату в ячейку как значение.

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

Теперь давайте напишем какой ни будь полезный макрос, я буду писать строчки и как можно подробнее их комментировать. Комментарии от программы отделяются символом «‘», он ставится вначале комментария. Прошу учесть, что я самоучка и многого не знаю, и просто напишу так ка делаю это сам, возможно есть более изящные решения. Напоминаю, что это просто ознакомительный опус для тех, кто не в зуб ногой.

Sub Colorization()
‘начало нашего макроса и его название
Dim x As Integer
‘объявляем переменную х типа интеджер, это тип для целых чисел от -32 768 до 32 767 (2 байта),
‘она нам нужна для перебора ячеек
For x = 1 To ActiveSheet.UsedRange.Rows.Count
‘перебираем х от 1 до конца использованной части листа, то есть не весь лист, а там где есть данные.
‘Тут цикл For повторяется от этой строки до строки Next x, которая прописана ниже
If Cells(x, 1).Value = «красный» Then Cells(x, 1).Interior.Color = RGB(255, 0, 0)
‘если значение в ячейке равно «красный» то закрашиваем ячейку в красный цвет. Функция If выполняет часть
‘после Then если условие между If и Then верно. Так как у нас необходимое действие занимает одну
‘строку можно писать в таком виде, если же действий несколько применяется конструкция:
‘If … Then
‘…
‘…
‘End If
If Cells(x, 1).Value = «зеленый» Then Cells(x, 1).Interior.Color = RGB(0, 255, 0)
‘как выше только в зеленый цвет
If Cells(x, 1).Value = «синий» Then Cells(x, 1).Interior.Color = RGB(0, 0, 255)
‘в синий цвет
Next x ‘берем следующее значение х, конец цикла For, который мы начали выше
End Sub ‘конец макроса
Как работает этот макрос: берет первый столбец, сначала 1 ячейку, смотрит что в ней написано, и если это равно «красный», «зеленый» или «синий», то красит фон ячейки в этот цвет, если нет по пропускает. Потом берет вторую и т. д. до конца активной части текущего листа.
Для проверки работы макроса нам нужен лист, где в первом столбце будут случайным образом прописаны цвета «красный», «зеленый», «синий». Запускаем макрос – когда он отработает ячейки будут раскрашены:

EXCEL - ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО Макрос, Microsoft Excel, Обучение, Офис, Работа, Длиннопост

Некоторые пояснения: если не писать просто Cells то макрос будет делать все в активном листе активного окна. Но макрос может идти и в другие листы, файлы, даже в другие приложения офиса, но об этом не сегодня.

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

Итак, на этом пока все. Надеюсь теперь те, кто никогда не видел макросов получат о них начальное представление. Дальше буду писать про более практичное применение.

Читать:
Как вывести изображение с камеры на компьютер

Похожие статьи