- Регистрация
- 04.10.2014
- Сообщения
- 387
- Реакции
- 69
- Баллы
- 28
Доброго времени суток.
=
Эта статья посвещена теме "как с минимальными усилиями забить данные для постинга объявлений в файл Excel, для последущего использования их в пользовательском шаблоне ZennoPoster5 ".
=
Наверное не многие заметили, что в ZennoPoster 5 - Билд 5.5.0.0 появились поддержка *.xlsm формата таблиц.
Что же такое *.xlsm и чем отличается от старого доброго *.xlsx?
=
Расширение XLSM – это лист экселя с поддержкой макросов, написанных на языке Visual Basic для приложений (VBA), сохраняется в новом формате Open XML, который появился в Microsoft Office 2007. XLSM файлы очень похожи на XLSX файлы, но включена поддержка макросов. Они могут быть открыты с помощью Excel 2007 или выше, или в предыдущих версиях Excel, если установлен Пакет обеспечения совместимости Microsoft Office для форматов файлов Word, Excel и PowerPoint. По соображениям безопасности, Excel не позволяет открывать макросы по умолчанию.
Примечание: Microsoft Excel не будет выполнять макросы в файлах XLSX, даже если они содержат код макроса. Из-за безопасности файлы с макросом должны быть сохранены в файле с расширением XLSM.
=
Итак, с помощью Visual Basic for Applications(VBA) создадим интуитивно понятный даже для ребёнка интерфейс забивки объявлений.
=
Начнём мы с настройки Excel.(Хоть 2007 версия отлично работает с макросами, я всё же рекомендую работать на 2010). По умолчанию в Excel макросы отключены(из соображений безопасности). Но настоящие пираты красного моря не боятся xD. Врубаем.
=
Шаг1.
=
Шаг2.
=
Шаг3.
=
Всё. Инструмент готов. Чтобы начать заниматься программаторством надо открыть код листа.
=========================================
Давайте посмотрим в каких типичных ситуациях нам может пригодиться стандартный функционал Excel и макросы VBA:
=
Пример1.(Создание выпадающих списков городов и метро/районов)
=
Тут я показываю как создавать выпадающие списки:
Тут как вставлять их в любую ячейку:
=
А теперь применим маленький VBA код который не даст пользователю свалять дурака и случайно заполнить метро/район в городе в котором отсутствует метро/район.
Тут как это должно работать:
=
Пример2.(Автоматизируем вставку пути к фото)
=
Стандартная ситуация. В ячейку надо вставить имя папки или всю директорию по которой лежат наши фотки. Кто часто работает с Excel поймёт как может напрягать сворачивание программы, поиск директории с фото, копирование, вставка имени директории в нужную ячейку.
Упростим это. Накидаем код который по событию(дабл клик по любой ячейке в нужном нам столбце), вызывает окно проводника и вставляет имя выбранной папки с фото.
=
Тут как это должно работать:
=
Фух!!! Сегодня мы уже достаточно попрактиковались в программаторстве на VBA, и даже проголодались. Пора переходить к десерту!
=
Пример3.(Шаблон нашпигованный сладкими макросами под соусом Avito-Недвижимость)
=
Этот шаблон я делал лично для себя. Он не претендует на серьёзное использование в сфере постинга объявлений, но я надеюсь кому нибудь на форуме он может оказаться весьма полезным.
Переделать его под другую категорию или под использование на другом сайте не составит большого труда.
=
Принцип работы шаблона:
На листе1 данные которые мы будем заполнять для постинга объявлений.
На листе2 схема категорий(Её под свои нужды можно редактировать)
На листе3 хранятся все выпадающие списки(Их тоже можно редактировать)
=
Какие макросы присутствуют в шаблоне:
-Макрос на проверку Город район/метро.
-Макрос на загрузку фото.
-Макрос на выбор подкатегории недвижимости-авито.
-Макрос на подсветку зелёным/красным что надо/ненадо заполнять.
-Макрос на выделение пунктиром строки
-Макрос на умную шапку(При щелчке по строкам разных категорий будет меняться шапка)
-Макрос на сортировку(При дабл клике на ячейке шапки сортирует от A-Z и в обратном порядке значения всей строки, по заданному столбцу.)
=
Видео работы шаблона:
=
Конец
Не стесняемся с идеями, что можно еще добавить в шаблон, буду рад послушать.
Всем спасибо за просмотр и удачи в новом году, голосуйте за прокачанный постер!!!)
=
Эта статья посвещена теме "как с минимальными усилиями забить данные для постинга объявлений в файл Excel, для последущего использования их в пользовательском шаблоне ZennoPoster5 ".
=
Наверное не многие заметили, что в ZennoPoster 5 - Билд 5.5.0.0 появились поддержка *.xlsm формата таблиц.
Что же такое *.xlsm и чем отличается от старого доброго *.xlsx?
=
Расширение XLSM – это лист экселя с поддержкой макросов, написанных на языке Visual Basic для приложений (VBA), сохраняется в новом формате Open XML, который появился в Microsoft Office 2007. XLSM файлы очень похожи на XLSX файлы, но включена поддержка макросов. Они могут быть открыты с помощью Excel 2007 или выше, или в предыдущих версиях Excel, если установлен Пакет обеспечения совместимости Microsoft Office для форматов файлов Word, Excel и PowerPoint. По соображениям безопасности, Excel не позволяет открывать макросы по умолчанию.
Примечание: Microsoft Excel не будет выполнять макросы в файлах XLSX, даже если они содержат код макроса. Из-за безопасности файлы с макросом должны быть сохранены в файле с расширением XLSM.
=
Итак, с помощью Visual Basic for Applications(VBA) создадим интуитивно понятный даже для ребёнка интерфейс забивки объявлений.
=
Начнём мы с настройки Excel.(Хоть 2007 версия отлично работает с макросами, я всё же рекомендую работать на 2010). По умолчанию в Excel макросы отключены(из соображений безопасности). Но настоящие пираты красного моря не боятся xD. Врубаем.
=
Шаг1.
=
Шаг2.
=
Шаг3.
=
Всё. Инструмент готов. Чтобы начать заниматься программаторством надо открыть код листа.
=========================================
Давайте посмотрим в каких типичных ситуациях нам может пригодиться стандартный функционал Excel и макросы VBA:
=
Пример1.(Создание выпадающих списков городов и метро/районов)
=
Тут я показываю как создавать выпадающие списки:
А теперь применим маленький VBA код который не даст пользователю свалять дурака и случайно заполнить метро/район в городе в котором отсутствует метро/район.
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("A2:A1000")) Is Nothing Then
If Target = "Саратов" Then
Target.Offset(0, 1).Activate
Else
Target.Offset(0, 1) = ""
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("B2:B1000")) Is Nothing Then
Application.EnableEvents = False
If Target.Offset(0, -1) <> "Саратов" Then Target.Offset(0, -1).Activate
End If
Application.EnableEvents = True
End Sub
Пример2.(Автоматизируем вставку пути к фото)
=
Стандартная ситуация. В ячейку надо вставить имя папки или всю директорию по которой лежат наши фотки. Кто часто работает с Excel поймёт как может напрягать сворачивание программы, поиск директории с фото, копирование, вставка имени директории в нужную ячейку.
Упростим это. Накидаем код который по событию(дабл клик по любой ячейке в нужном нам столбце), вызывает окно проводника и вставляет имя выбранной папки с фото.
Код:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Arr
On Error GoTo 0
If Intersect(Target, Columns("A:A")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
.Show
If .SelectedItems.Count <> 1 Then Exit Sub
Arr = Split(.SelectedItems(1), "\")
Target = Arr(UBound(Arr))
End With
Cancel = True
End Sub
Тут как это должно работать:
Фух!!! Сегодня мы уже достаточно попрактиковались в программаторстве на VBA, и даже проголодались. Пора переходить к десерту!

=
Пример3.(Шаблон нашпигованный сладкими макросами под соусом Avito-Недвижимость)
=
Этот шаблон я делал лично для себя. Он не претендует на серьёзное использование в сфере постинга объявлений, но я надеюсь кому нибудь на форуме он может оказаться весьма полезным.
Переделать его под другую категорию или под использование на другом сайте не составит большого труда.
=
Принцип работы шаблона:
На листе1 данные которые мы будем заполнять для постинга объявлений.
На листе2 схема категорий(Её под свои нужды можно редактировать)
На листе3 хранятся все выпадающие списки(Их тоже можно редактировать)
=
Какие макросы присутствуют в шаблоне:
-Макрос на проверку Город район/метро.
-Макрос на загрузку фото.
-Макрос на выбор подкатегории недвижимости-авито.
-Макрос на подсветку зелёным/красным что надо/ненадо заполнять.
-Макрос на выделение пунктиром строки
-Макрос на умную шапку(При щелчке по строкам разных категорий будет меняться шапка)
-Макрос на сортировку(При дабл клике на ячейке шапки сортирует от A-Z и в обратном порядке значения всей строки, по заданному столбцу.)
=
Видео работы шаблона:
Конец

Не стесняемся с идеями, что можно еще добавить в шаблон, буду рад послушать.
Всем спасибо за просмотр и удачи в новом году, голосуйте за прокачанный постер!!!)
- Номер конкурса статей
- Второй конкурс статей
- Тема статьи
- Другое


