<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Хранилище полезных ресурсов</title>
		<link>http://linkhelp.ucoz.ru/</link>
		<description>Форум</description>
		<lastBuildDate>Wed, 15 Apr 2020 15:54:22 GMT</lastBuildDate>
		<generator>uCoz Web-Service</generator>
		<atom:link href="https://linkhelp.ucoz.ru/forum/rss" rel="self" type="application/rss+xml" />
		
		<item>
			<title>Автоматическая вставка картинок (изображений) на лист Excel</title>
			<link>https://linkhelp.ucoz.ru/forum/7-19-1</link>
			<pubDate>Wed, 15 Apr 2020 15:54:22 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Описание темы: поиск картинки в папках&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: Defo&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>&lt;span style=&quot;font-size:12pt;&quot;&gt;Вставка картинок (изображений) на лист Excel&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; Надстройка позволяет искать в выбранной папке изображения, основываясь на содержимом ячеек таблицы Excel, и производить вставку найденных изображений в соседние ячейки (или в примечания к этим ячейкам). &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Особенности надстройки:&lt;/b&gt; &lt;br /&gt; поиск картинок в подпапках (глубина поиска по подпапкам не ограничена) &lt;br /&gt; установка выбранного пользователем размера для вставляемых изображений &lt;br /&gt; отображение состояния поиска и вставки изображений (прогресс-бар) &lt;br /&gt; вывод результатов обработки таблицы (сколько изображений вставлено, сколько не найдено) &lt;br /&gt; добавление гиперссылок к вставляемым изображениям (по щелчку на картинке открывается исходный файл) &lt;br /&gt; 2 режима поиска файлов - по точному совпадению имени файла, и по началу имени файла-изображения &lt;br /&gt; 2 режима вставки картинок - подгонка размеров под ячейку, или соблюдение пропорций исходного изображения &lt;br /&gt; вывод количества файлов в выбранной папке &lt;br /&gt; возможность выбора столбца с названиями файлов, и указания номера столбца для вставляемых изображений &lt;br /&gt; возможность вставки изображений в комментарии к ячейкам &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Принцип работы с макросом:&lt;/b&gt; &lt;br /&gt; Скачиваем прикреплённый архив, и извлекаем из него папку InsertPicsEx куда-нибудь себе на диск. &lt;br /&gt; Открываем файл (надстройку) программа.xla (запустится пустой Excel - файл надстройки не отображается) &lt;br /&gt; Открываем файл с названиями картинок - например, присутствующий в папке файл для обработки.xls &lt;br /&gt; Нажимаем Ctrl + Shift + K для запуска формы надстройки &lt;br /&gt; В появившейся форме выбираем путь к папке, содержащей картинки (изображения) &lt;br /&gt; Выставляем необходимые размеры для ячеек с картинками, выбираем первую ячейку на листе с именем файла &lt;br /&gt; Указываем номер столбца, в который будут помещены изображения &lt;br /&gt; Нажимаем зелёную кнопку, и через несколько секунд получаем результат. &lt;br /&gt;&lt;br /&gt; &lt;a class=&quot;link&quot; href=&quot;http://linkhelp.ucoz.ru/FreeDownload/insertpicsextended.zip&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Скачать (размер 456Кб)&lt;/a&gt;</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-19-1</guid>
		</item>
		<item>
			<title>Excel-макрос, данные которого также отображаются в html</title>
			<link>https://linkhelp.ucoz.ru/forum/7-140-1</link>
			<pubDate>Mon, 14 Dec 2015 08:00:45 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Описание темы: Excel-макрос, данные которого также отображаются в html&lt;br /&gt;Автор темы: vladas1983&lt;br /&gt;Автор последнего сообщения: vladas1983&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Есть html-поздравление и оно именное. Для удобства обычных пользователей нужно я придумал сделать excel-файл со списком имен и фамилий в виде строк (на одной строке в одной ячейке одно Имя и Фамилие. Эти данные должны отображаться в html-поздравлении, возможно через php-код или еще какой-то скрипт. Обычный пользователь создает копию html-файла, в названии которого будет номер строки excel для того, чтобы было понятно, с какой строки брать данные. (Например, 2_ivanov.html). Смысл такой, чтобы обычный пользователь без знаний html мог удобно и просто создать нового html-файл с новым клиентом. Если, возможно, то лучше этот макрос мог бы создать html-файл с поздравлением на основе html-шаблона. Будет, например, еще один столбец рядом с указанием имени html-файла или название файла генерироваться автоматически (&quot;Номер строки&quot;_&quot;имя_фамилия (на латинице)&quot;, например, 1_ivan_ivanovich.html). Номер строки нужен, т.к. Иван Ивановичей может быть много и второй файл пересохранит первый. Эти данные должны редактироваться и удаляться. &lt;br /&gt;Возможно, есть какой-то другой простой способ? Необязательно через excel-макрос, а через txt-файл, где данные также будут построчно вводится.</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>vladas1983</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-140-1</guid>
		</item>
		<item>
			<title>VBA Excel полезные строки кода</title>
			<link>https://linkhelp.ucoz.ru/forum/7-137-1</link>
			<pubDate>Fri, 10 Apr 2015 13:45:16 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Определение строки где есть слово &quot;Колличество&quot; &lt;br /&gt; dd = Sheets(i).Cells.Find(What:=&quot;Колличество&quot;).Row &lt;br /&gt;&lt;br /&gt; Определение колонки где есть слово &quot;Колличество&quot; &lt;br /&gt; ddd = Sheets(i).Cells.Find(What:=&quot;Колличество&quot;).Column &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Добавлено&lt;/b&gt; (21.03.2015, 17:50) &lt;br /&gt; --------------------------------------------- &lt;br /&gt; &lt;b&gt;Буфер обмена&lt;/b&gt; &lt;br /&gt; &lt;b&gt;ClipboardText&lt;/b&gt; (&lt;b&gt;чтение текста из буфера обмена&lt;/b&gt;), но не требующая подключения библиотеки &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Sub&lt;/span&gt; ПримерИспользования() &lt;br /&gt;&lt;br /&gt; txt = ClipboardText &lt;br /&gt;&lt;br /&gt; MsgBox txt, vbInformation, &lt;span style=&quot;color: #800000;&quot;&gt;&quot;Содержимое буфера обмена Windows&quot;&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Sub&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Function&lt;/span&gt; ClipboardText() &lt;span style=&quot;color: #008000;&quot;&gt;&apos; чтение из буфера обмена &lt;br /&gt;&lt;br /&gt; &lt;/span&gt;    &lt;span style=&quot;color: #000080;&quot;&gt;With&lt;/span&gt; GetObject(&lt;span style=&quot;color: #800000;&quot;&gt;&quot;New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}&quot;&lt;/span&gt;) &lt;br /&gt;&lt;br /&gt; .GetFromClipboard &lt;br /&gt;&lt;br /&gt; ClipboardText = .GetText &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;With&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Function&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Sub&lt;/span&gt; SetClipboardText(&lt;span style=&quot;color: #000080;&quot;&gt;ByVal&lt;/span&gt; txt$) &lt;span style=&quot;color: #008000;&quot;&gt;&apos; запись в буфер обмена &lt;br /&gt;&lt;br /&gt; &lt;/span&gt;    &lt;span style=&quot;color: #000080;&quot;&gt;With&lt;/span&gt; GetObject(&lt;span style=&quot;color: #800000;&quot;&gt;&quot;New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}&quot;&lt;/span&gt;) &lt;br /&gt;&lt;br /&gt; .SetText txt$ &lt;br /&gt;&lt;br /&gt; .PutInClipboard &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;With&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;color: #000080;&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;Sub&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Добавлено&lt;/b&gt; (21.03.2015, 17:53) &lt;br /&gt; --------------------------------------------- &lt;br /&gt; Как определить адрес активной ячейки. &lt;br /&gt; &lt;b&gt;ActiveCell.Row&lt;/b&gt; и &lt;b&gt;ActiveCell.Column&lt;/b&gt; - покажут координаты активной ячейки &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Добавлено&lt;/b&gt; (10.04.2015, 15:43) &lt;br /&gt; --------------------------------------------- &lt;br /&gt; Определение последней заполненной строки &lt;br /&gt; lLastRow = Cells.SpecialCells(xlLastCell).Row &lt;br /&gt;&lt;br /&gt; Определение последнего столбца &lt;br /&gt; lLastCol = Cells.SpecialCells(xlLastCell).Column &lt;br /&gt;&lt;br /&gt; Данный метод не требует указания номера столбца и возвращает максимальную последнюю ячейку&lt;i&gt;(строку - &lt;b&gt;Row&lt;/b&gt; либо столбец - &lt;b&gt;Column&lt;/b&gt;)&lt;/i&gt;. Но используя данный метод следует помнить, что не всегда можно получить &lt;br /&gt; реальную последнюю заполненную ячейку, т.е. именно ячейку со значением. &lt;br /&gt; Если вы где-то ниже занесете данные и сразу удалите их из таблицы, а &lt;br /&gt; затем примените такой метод, то &lt;b&gt;lLastRow&lt;/b&gt; будет равна значению строки, из которой вы только что удалили значения. Другими &lt;br /&gt; словами требует обязательного обновления данных, а этого можно добиться &lt;br /&gt; только сохранив и закрыв документ и открыв его снова. Так же, если &lt;br /&gt; какая-либо ячейка содержит форматирование&lt;i&gt;(например, заливку)&lt;/i&gt;, но не содержит никаких значений, то она тоже будет считаться заполненной.Я этот метод использую только для определения в только что созданном документе, в котором только добавляю строки. &lt;br /&gt;&lt;br /&gt; &lt;b&gt;Добавлено&lt;/b&gt; (10.04.2015, 16:18) &lt;br /&gt; --------------------------------------------- &lt;br /&gt; Получение ссылки ячейки в буквенном формате &lt;br /&gt;&lt;br /&gt; a = Cells(1, 1).Address &apos; результат &quot;$A$1&quot;&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (10.04.2015, 16:45)&lt;br /&gt;---------------------------------------------&lt;br /&gt;&apos; Вгоняем в массив все данные листа &lt;br /&gt;&lt;br /&gt;             Set Sheet1_WS = Sheets(&quot;исх дан&quot;) &lt;br /&gt;             FinalRow = maxzapolnstr &lt;br /&gt;             FinalColumn = 20 &lt;br /&gt;             &apos;Присваиваем массиву диапазон данных на Листе 1 &lt;br /&gt;             R_data = Sheet1_WS.Range(Sheet1_WS.Cells(1, 1), Sheet1_WS.Cells(FinalRow, FinalColumn))</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-137-1</guid>
		</item>
		<item>
			<title>Как вернуть внешний вид окна проекта VBA Excel</title>
			<link>https://linkhelp.ucoz.ru/forum/7-139-1</link>
			<pubDate>Thu, 02 Apr 2015 12:41:27 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>в меню Tools &gt; Options &gt; Docking &lt;br /&gt; ставим галку Project Explorer</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-139-1</guid>
		</item>
		<item>
			<title>Excel комментарии изменить размеры и размещение</title>
			<link>https://linkhelp.ucoz.ru/forum/7-136-1</link>
			<pubDate>Fri, 27 Feb 2015 13:31:36 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Dim c As Range &lt;br /&gt;     For Each c In ActiveWorkbook.Worksheets(&quot;All&quot;).Range(&quot;A1:kU300&quot;) &lt;br /&gt;         If Not (c.Comment Is Nothing) Then &apos; у ячейки есть примечание &lt;br /&gt;            &apos; c.Comment.Shape.Width = 84.75 &apos; ширина комментария &lt;br /&gt;            &apos; c.Comment.Shape.Height = 57#   &apos; высота комментария &lt;br /&gt;              &lt;br /&gt;             c.Comment.Shape.Top = c.Top + 10 &lt;br /&gt;             c.Comment.Shape.Left = c.Offset(, 1).Left + 20 &lt;br /&gt;         End If &lt;br /&gt;     Next c</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-136-1</guid>
		</item>
		<item>
			<title>Оптимизация VBA</title>
			<link>https://linkhelp.ucoz.ru/forum/7-24-1</link>
			<pubDate>Fri, 09 Jan 2015 12:55:39 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Описание темы: Cоветы и стратегии по оптимизации VBA&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: Natali_ASD&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>&lt;b&gt;На этой странице перечислены некоторые советы и стратегии по оптимизации Visual Basic For Applications (VBA) кода. Есть несколько абсолютных правил для оптимизации VBA, вы увидите увеличение производительности за счет оптимизации базовой логики.&lt;/b&gt; &lt;br /&gt;&lt;br /&gt; &lt;b&gt;&lt;span style=&quot;font-size:12pt;&quot;&gt;Доступ ячеек в диапазоне&lt;/span&gt;&lt;/b&gt; &lt;br /&gt;&lt;br /&gt; Вам не нужно использовать. Клетки метод для доступа к определенным ячеек в диапазоне. Например, вы можете использовать &lt;br /&gt;&lt;br /&gt; Range(&quot;MyRange&quot;)(1,2) а не &lt;br /&gt; Range(&quot;MyRange&quot;).Cells(1,2) &lt;br /&gt;&lt;br /&gt; Смотрите Алан Beban в объяснение этого метода для более подробной информации. &lt;br /&gt; С этим связана ускоренный метод ссылкой на клетки. VBA позволит вам ссылаться на ячейки с [A1], а не Range (&quot;A1&quot;). В то время как [A1] синтаксис легче ввести, это медленнее, чем выполнить Range (&quot;A1&quot;) синтаксис. &lt;br /&gt;&lt;br /&gt; &lt;b&gt;&lt;span style=&quot;font-size:12pt;&quot;&gt;Расчет режима&lt;/span&gt;&lt;/b&gt; &lt;br /&gt;&lt;br /&gt; Как правило, Excel пересчитает ячейки или диапазона ячеек при том, что ячейки или диапазона на прецеденты были изменены. Это может привести к книге пересчитать слишком часто, что приведет к замедлению работы. Вы можете предотвратить Excel от переоценки книгу с помощью заявлением: &lt;br /&gt;&lt;br /&gt; Application.Calculation = xlCalculationManual &lt;br /&gt; В конце вашего кода, вы можете установить режим расчета обратно в автоматический с заявлением: &lt;br /&gt;&lt;br /&gt; Application.Calculation = xlCalculationAutomatic &lt;br /&gt; Помните, однако, что при расчете режима xlCalculationManual, Excel не обновляются значения в ячейках. Если ваш макрос основывается на обновлении ячейки значение, вы должны заставить события Calculate, с. Рассчитайте метод, который может быть применен либо определенного диапазона (Range (&quot;Мой_диапазон&quot;). Вычислить) или всей книги (Вычислить) . &lt;br /&gt;&lt;br /&gt; &lt;b&gt;&lt;span style=&quot;font-size:12pt;&quot;&gt;Коллекция индексы&lt;/span&gt;&lt;/b&gt; &lt;br /&gt;&lt;br /&gt; Отдельного элемента из коллекции объект может быть доступна либо его имя или его индекс в коллекции. Например, если у вас есть три листа (&quot;Лист1&quot;, &quot;Лист2&quot; и &quot;Sheet3&quot;) в книге (&quot;MyWorkbook»), вы можете ссылаться на &quot;Лист2&quot; или с &lt;br /&gt;&lt;br /&gt; Worksheets(&quot;Sheet2&quot;) or &lt;br /&gt; Worksheets(2) &lt;br /&gt;&lt;br /&gt; В общем, метод индексов (Worksheets(2)) значительно быстрее, чем метод имя индекса (Worksheets (&quot;Лист2&quot;)). &lt;br /&gt; Тем не менее, количество и порядок элементов в коллекции может меняться, поэтому, как правило, безопаснее и проще ссылаться на элементы в коллекции по имени, а не их порядковый номер.[b]</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-24-1</guid>
		</item>
		<item>
			<title>Как разобрать HTML файл из VBA кода в Excel?</title>
			<link>https://linkhelp.ucoz.ru/forum/7-95-1</link>
			<pubDate>Fri, 22 Mar 2013 12:51:28 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>- Открыть HTML файл из VBA код (с с) &lt;br /&gt; - Доступ &lt;td&gt; теги, которые имеют определенный атрибут (а именно: класс = &quot;Шрифт&quot; ширина = &quot;220&quot;) &lt;br /&gt; - Скопировать значение этих ячеек таблицы в Excel клетки &lt;br /&gt;&lt;br /&gt; Если при выполнении кода сообщение об ошибке: &quot;User-defined type not defined&quot;, то In Tools - References in the VB Editor, tick MS Internet Controls, or Dim appIE As Object. Your code declares MSHTML objects so you also need the MS HTML Object Library reference. &lt;br /&gt;&lt;br /&gt; Sub Extract_TD_text() &lt;br /&gt;&lt;br /&gt; Dim URL As String &lt;br /&gt; Dim IE As InternetExplorer &lt;br /&gt; Dim HTMLdoc As HTMLDocument &lt;br /&gt; Dim TDelements As IHTMLElementCollection &lt;br /&gt; Dim TDelement As HTMLTableCell &lt;br /&gt; Dim r As Long &lt;br /&gt; &lt;br /&gt; &apos;Saved from www vbaexpress com/forum/forumdisplay.php?f=17 &lt;br /&gt; URL = &quot;http://www.vbaexpress.com/forum/forumdisplay.php?f=17&quot; &lt;br /&gt; &lt;br /&gt; Set IE = New InternetExplorer &lt;br /&gt; &lt;br /&gt; With IE &lt;br /&gt; .navigate URL &lt;br /&gt; .Visible = True &lt;br /&gt; &lt;br /&gt; &apos;Wait for page to load &lt;br /&gt; While .Busy Or .readyState &lt;&gt; READYSTATE_COMPLETE: DoEvents: Wend &lt;br /&gt; &lt;br /&gt; Set HTMLdoc = .document &lt;br /&gt; End With &lt;br /&gt; &lt;br /&gt; Set TDelements = HTMLdoc.getElementsByTagName(&quot;TD&quot;) &lt;br /&gt; &lt;br /&gt; Ëèñò1.Cells.ClearContents &lt;br /&gt; &lt;br /&gt; r = 1 &lt;br /&gt; For Each TDelement In TDelements &lt;br /&gt; &apos;Look for required TD elements - this check is specific to VBA Express forum - modify as required &lt;br /&gt; If TDelement.className = &quot;alt2&quot; And TDelement.Align = &quot;center&quot; Then &lt;br /&gt; Cells(r, 1).Value = TDelement.innerText &lt;br /&gt; r = r + 1 &lt;br /&gt; End If &lt;br /&gt; Next &lt;br /&gt; &lt;br /&gt; End Sub</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-95-1</guid>
		</item>
		<item>
			<title>Скачивание (загрузка) текста web-страницы в текстовый файл</title>
			<link>https://linkhelp.ucoz.ru/forum/7-93-1</link>
			<pubDate>Sat, 23 Feb 2013 14:53:13 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;a class=&quot;link&quot; href=&quot;http://u.to/8b7yAg&quot; title=&quot;http://excelvba.ru/code/GetWebPageText&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;При помощи этого макроса вы можете скачать текст с выбранной страницы веб-сайта:&lt;/a&gt; &lt;br /&gt;&lt;br /&gt; Sub ЗагрузкаТекстаВебСтраницы() &lt;br /&gt; Set IE = CreateObject(&quot;InternetExplorer.Application&quot;): &apos; загружаем браузер Internet Explorer &lt;br /&gt; On Error Resume Next &lt;br /&gt; addr$ = &quot;http://excelvba.ru/services&quot; &apos; указываем адрес сайта (веб-страницы), текст которой загружаем &lt;br /&gt;&lt;br /&gt; IE.Navigate addr$ &apos; загружаем сайт &lt;br /&gt; While IE.busy Or (IE.readyState &lt;&gt; 4): DoEvents: Wend &apos; ждем, пока загрузится страница &lt;br /&gt; &apos; Set ieDoc = IE.Document &apos; ссылка на открытый документ &lt;br /&gt;&lt;br /&gt; txt$ = IE.Document.body.innerText &apos; считываем текст веб-страницы в текстовую переменную &lt;br /&gt; &lt;br /&gt; &apos;[a1] = txt$ &apos; помещаем текст веб-страницы на лист Excel &lt;br /&gt; IE.Quit: Set IE = Nothing &apos; закрываем браузер &lt;br /&gt; &lt;br /&gt; MsgBox txt$, vbInformation, &quot;Текст веб-страницы &quot; &amp; addr$ &apos; выводим сообщение с текстом с сайта &lt;br /&gt; End Sub &lt;br /&gt;&lt;br /&gt; То же самое - но в виде функции: &lt;br /&gt;&lt;br /&gt; Function WebPageText(ByVal sURL As String) As String &lt;br /&gt; On Error Resume Next &lt;br /&gt; Set IE = CreateObject(&quot;InternetExplorer.Application&quot;): &apos; загружаем браузер Internet Explorer &lt;br /&gt; IE.Navigate sURL &apos; загружаем сайт &lt;br /&gt; While IE.busy Or (IE.readyState &lt;&gt; 4): DoEvents: Wend &apos; ждем, пока загрузится страница &lt;br /&gt; WebPageText = IE.Document.body.innerText &apos; считываем текст веб-страницы &lt;br /&gt; IE.Quit: Set IE = Nothing &apos; закрываем браузер &lt;br /&gt; End Function &lt;br /&gt;&lt;br /&gt; Пример использования этой функции для загрузки текста страниц из интернета: &lt;br /&gt; Sub ПримерИспользованияФункции_WebPageText() &lt;br /&gt; &apos; считываем текст страницы &lt;a href=&quot;http://excelvba.ru/services&quot; title=&quot;http://excelvba.ru/services&quot;&gt;http://excelvba.ru/services&lt;/a&gt; в переменную txt &lt;br /&gt; txt = WebPageText(&quot;http://excelvba.ru/services&quot;) &lt;br /&gt; &apos; получаем путь к папке &quot;Рабочий стол&quot; &lt;br /&gt; ПутьКРабочемуСтолу = CreateObject(&quot;WScript.Shell&quot;).SpecialFolders(&quot;Desktop&quot;) &lt;br /&gt; &apos; сохраняем текст из переменной txt в файл PageText.txt на рабочем столе &lt;br /&gt; SaveTXTfile ПутьКРабочемуСтолу &amp; &quot;&amp;#92;PageText.txt&quot;, txt &lt;br /&gt; &apos; открываем созданный текстовый файл в Excel &lt;br /&gt; Workbooks.OpenText ПутьКРабочемуСтолу &amp; &quot;&amp;#92;PageText.txt&quot;, , , xlDelimited &lt;br /&gt; End Sub &lt;br /&gt;&lt;br /&gt; Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean &lt;br /&gt; On Error Resume Next: Err.Clear &lt;br /&gt; Set fso = CreateObject(&quot;scripting.filesystemobject&quot;) &lt;br /&gt; Set ts = fso.CreateTextFile(filename, True) &lt;br /&gt; ts.Write txt: ts.Close &lt;br /&gt; SaveTXTfile = Err = 0 &lt;br /&gt; Set ts = Nothing: Set fso = Nothing &lt;br /&gt; End Function</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-93-1</guid>
		</item>
		<item>
			<title>Скачивание исходного кода web-страницы в текстовый файл</title>
			<link>https://linkhelp.ucoz.ru/forum/7-92-1</link>
			<pubDate>Sat, 23 Feb 2013 14:47:53 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;a class=&quot;link&quot; href=&quot;http://u.to/-r3yAg&quot; title=&quot;http://excelvba.ru/code/GetHTTPResponse&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Данная функция возвращает исходный текст web-страницы:&lt;/a&gt; &lt;br /&gt;&lt;br /&gt; Function GetHTTPResponse(ByVal sURL As String) As String &lt;br /&gt; On Error Resume Next &lt;br /&gt; Set oXMLHTTP = CreateObject(&quot;MSXML2.XMLHTTP&quot;) &lt;br /&gt; With oXMLHTTP &lt;br /&gt; .Open &quot;GET&quot;, sURL, False &lt;br /&gt; &apos; раскомментируйте следующие строки и подставьте верные IP, логин и пароль &lt;br /&gt; &apos; если вы сидите за proxy &lt;br /&gt; &apos; .setProxy 2, &quot;192.168.100.1:3128&quot; &lt;br /&gt; &apos; .setProxyCredentials &quot;user&quot;, &quot;password&quot; &lt;br /&gt; .send &lt;br /&gt; GetHTTPResponse = .responseText &lt;br /&gt; End With &lt;br /&gt; Set oXMLHTTP = Nothing &lt;br /&gt; End Function &lt;br /&gt;&lt;br /&gt; Пример использования функции GetHTTPResponse &lt;br /&gt;&lt;br /&gt; Private Sub ПримерИспользованияФункции_GetHTTPResponse() &lt;br /&gt; &apos; считываем исходный текст страницы ExcelVBA.ru в переменную txt &lt;br /&gt; txt = GetHTTPResponse(&quot;http://ExcelVBA.ru&quot;) &lt;br /&gt; &apos; получаем путь к папке &quot;Рабочий стол&quot; &lt;br /&gt; ПутьКРабочемуСтолу = CreateObject(&quot;WScript.Shell&quot;).SpecialFolders(&quot;Desktop&quot;) &lt;br /&gt; &apos; сохраняем текст из переменной txt в файл PageText.txt на рабочем столе &lt;br /&gt; SaveTXTfile ПутьКРабочемуСтолу &amp; &quot;&amp;#92;PageText.txt&quot;, txt &lt;br /&gt; &apos; открываем созданный текстовый файл в Excel &lt;br /&gt; Workbooks.OpenText ПутьКРабочемуСтолу &amp; &quot;&amp;#92;PageText.txt&quot; &lt;br /&gt; End Sub &lt;br /&gt;&lt;br /&gt; Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean &lt;br /&gt; On Error Resume Next: Err.Clear &lt;br /&gt; Set fso = CreateObject(&quot;scripting.filesystemobject&quot;) &lt;br /&gt; Set ts = fso.CreateTextFile(filename, True) &lt;br /&gt; ts.Write txt: ts.Close &lt;br /&gt; SaveTXTfile = Err = 0 &lt;br /&gt; Set ts = Nothing: Set fso = Nothing &lt;br /&gt; End Function</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-92-1</guid>
		</item>
		<item>
			<title>Полная автоматизация получения данных веб-страницы в листе E</title>
			<link>https://linkhelp.ucoz.ru/forum/7-91-1</link>
			<pubDate>Wed, 20 Feb 2013 15:13:13 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://linkhelp.ucoz.ru/forum/7&quot;&gt;Excel Макросы (VBA)&lt;/a&gt;&lt;br /&gt;Описание темы: Полная автоматизация получения данных веб-страницы в листе E&lt;br /&gt;Автор темы: koralek&lt;br /&gt;Автор последнего сообщения: koralek&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;span style=&quot;font-size:12pt;&quot;&gt;Полная автоматизация получения данных веб-страницы в листе Excel с помощью VBA&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; В этом видео мы показываем полную автоматизацию как получить данные в лист Excel с помощью VBA.1. Мы сначала изучить сайт и узнать элементов мы должны будем получить доступ к форме и последующие результаты. Когда вы будете изучать исходный код веб-страницы вы заметите, что фактические результаты, завернутый в DIV контейнеров.2. Далее мы написать код VBA Мы используем GetElementById метод, чтобы получить ссылку на один объект и GetElementsByTagName метод, чтобы получить коллекцию всех элементов. Далее мы проходим по всем элементам и получить свойства текста или данных (&apos;InnerText&apos;) всех элементов, которые мы хотели бы иметь. Наш код создает экземпляр нашего веб-браузера (Internet Explorer) и переходит на адрес нашего выбора, а затем помогает получить или извлечь данные с помощью событий. Мы также гарантируем, что код помещены в соответствующие строки и столбцы так, что любой дальнейший анализ производится легко. Наконец, мы используем записанный макрос для форматирования данных, чтобы сделать его более презентабельным для человеческого глаза. Примечание: Если имена классов или другие изменения в код HTML на веб-странице вам нужно изменить ваш код VBA соответственно, чтобы очистить данные правильно.Макро-код, чтобы получить данные веб-страницы в листе Excel с помощью VBA приведен ниже: &lt;br /&gt;&lt;br /&gt; Sub test() &lt;br /&gt; Dim eRow As Long &lt;br /&gt; Dim ele As Object &lt;br /&gt; Set sht = Sheets(&quot;Sheet1&quot;) &lt;br /&gt; RowCount = 1 &lt;br /&gt; sht.Range(&quot;A&quot; &amp; RowCount) = &quot;Title&quot; &lt;br /&gt; sht.Range(&quot;B&quot; &amp; RowCount) = &quot;Company&quot; &lt;br /&gt; sht.Range(&quot;C&quot; &amp; RowCount) = &quot;Location&quot; &lt;br /&gt; sht.Range(&quot;D&quot; &amp; RowCount) = &quot;Description&quot; &lt;br /&gt; eRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row &lt;br /&gt; Set objIE = CreateObject(&quot;InternetExplorer.Application&quot;) &lt;br /&gt; myjobtype = InputBox(&quot;Enter type of job eg. sales, administration&quot;) &lt;br /&gt; myzip = InputBox(&quot;Enter zipcode of area where you wish to work&quot;) &lt;br /&gt; With objIE &lt;br /&gt; .Visible = True &lt;br /&gt; .navigate &quot;http://www.jobs.com/&quot; &lt;br /&gt; Do While .Busy Or _ &lt;br /&gt; .readyState &lt;&gt; 4 &lt;br /&gt; DoEvents &lt;br /&gt; Loop &lt;br /&gt; Set what = .document.getElementsByName(&quot;q&quot;) &lt;br /&gt; what.Item(0).Value = myjobtype &lt;br /&gt; Set zipcode = .document.getElementsByName(&quot;where&quot;) &lt;br /&gt; zipcode.Item(0).Value = myzip &lt;br /&gt; .document.getElementById(&quot;JobsButton&quot;).Click &lt;br /&gt; Do While .Busy Or _ &lt;br /&gt; .readyState &lt;&gt; 4 &lt;br /&gt; DoEvents &lt;br /&gt; Loop &lt;br /&gt; For Each ele In .document.all &lt;br /&gt; Select Case ele.classname &lt;br /&gt; Case &quot;Result&quot; &lt;br /&gt; RowCount = RowCount + 1 &lt;br /&gt; Case &quot;Title&quot; &lt;br /&gt; sht.Range(&quot;A&quot; &amp; RowCount) = ele.innertext &lt;br /&gt; Case &quot;Company&quot; &lt;br /&gt; sht.Range(&quot;B&quot; &amp; RowCount) = ele.innertext &lt;br /&gt; Case &quot;Location&quot; &lt;br /&gt; sht.Range(&quot;C&quot; &amp; RowCount) = ele.innertext &lt;br /&gt; Case &quot;Description&quot; &lt;br /&gt; sht.Range(&quot;D&quot; &amp; RowCount) = ele.innertext &lt;br /&gt; End Select &lt;br /&gt; Next ele &lt;br /&gt; End With &lt;br /&gt; Macro1 &lt;br /&gt; Set objIE = Nothing &lt;br /&gt; End Sub &lt;br /&gt; Sub Macro1() &lt;br /&gt; &apos; &lt;br /&gt; &apos; Macro1 Macro &lt;br /&gt; &apos; Formatting imported data &lt;br /&gt; &apos; &lt;br /&gt; &apos; &lt;br /&gt; Columns(&quot;A:D&quot;).Select &lt;br /&gt; Selection.Columns.AutoFit &lt;br /&gt; With Selection &lt;br /&gt; .VerticalAlignment = xlTop &lt;br /&gt; .Orientation = 0 &lt;br /&gt; .AddIndent = False &lt;br /&gt; .IndentLevel = 0 &lt;br /&gt; .ShrinkToFit = False &lt;br /&gt; .ReadingOrder = xlContext &lt;br /&gt; End With &lt;br /&gt; Range(&quot;D1&quot;).Select &lt;br /&gt; Columns(&quot;D:D&quot;).ColumnWidth = 50 &lt;br /&gt; Columns(&quot;A:D&quot;).Select &lt;br /&gt; Selection.Rows.AutoFit &lt;br /&gt; End Sub &lt;br /&gt;&lt;br /&gt; Watch the training video below to see how the process of complete automation of data collection from a web page into an Excel spreadsheet is implemented: &lt;br /&gt;&lt;br /&gt; &lt;a class=&quot;link&quot; target=&quot;_blank&quot; href=&quot;http://u.to/KcvqAg&quot; title=&quot;http://www.familycomputerclub.com/get-web-page-data-int-excel-using-vba.html&quot; rel=&quot;nofollow&quot;&gt;http://www.familycomputerclub.com/get-web....ba.html&lt;/a&gt;</content:encoded>
			<category>Excel Макросы (VBA)</category>
			<dc:creator>koralek</dc:creator>
			<guid>https://linkhelp.ucoz.ru/forum/7-91-1</guid>
		</item>
	</channel>
</rss>