<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Электронные Таблицы &#187; макросы</title>
	<atom:link href="http://www.myspreadsheet.info/tag/makrosy/feed" rel="self" type="application/rss+xml" />
	<link>http://www.myspreadsheet.info</link>
	<description>... маленькие хитрости Электронных Таблиц ...</description>
	<lastBuildDate>Tue, 20 Jul 2010 10:08:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>MetaTrader4-DDE-Excel 2007 Сохранение Котировок на Листе</title>
		<link>http://www.myspreadsheet.info/metatrader4-dde-excel-2007-soxranenie-kotirovok-na-liste.html</link>
		<comments>http://www.myspreadsheet.info/metatrader4-dde-excel-2007-soxranenie-kotirovok-na-liste.html#comments</comments>
		<pubDate>Thu, 04 Dec 2008 19:15:18 +0000</pubDate>
		<dc:creator>egor</dc:creator>
				<category><![CDATA[All]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Трейдерам]]></category>
		<category><![CDATA[dde]]></category>
		<category><![CDATA[metatrader4]]></category>
		<category><![CDATA[vba]]></category>
		<category><![CDATA[макросы]]></category>

		<guid isPermaLink="false">http://www.myspreadsheet.info/?p=85</guid>
		<description><![CDATA[В комментариях к статье про передачу данных из MeteTrader4 в Excel, появился вопросик &#8211; Как можно сохранить данные поступающие через DDE? Решение следующее: Создаем новый лист в Excel. В любую ячейку записываем запрос к MetaTreder =MT4&#124;QUOTE!GBPUSD и присваиваем имя этой ячейке как GBPUSD_QUOTE. В данную ячейку будем получать данные из MT4. Дальше определяем столбец куда [...]]]></description>
			<content:encoded><![CDATA[<p>В <a href="http://www.myspreadsheet.info/peredacha-dannyx-iz-metatrader4-v-ms-excel-2007.html#comment-315">комментариях</a> к статье про передачу данных из <strong>MeteTrader4</strong> в <strong>Excel</strong>, появился вопросик &#8211; <strong>Как можно сохранить данные поступающие через DDE?</strong><br />
Решение следующее:<br />
Создаем новый лист в <strong>Excel</strong>.<br />
В любую ячейку записываем запрос к MetaTreder <strong>=MT4|QUOTE!GBPUSD</strong> и присваиваем имя этой ячейке как <strong>GBPUSD_QUOTE</strong>. В данную ячейку будем получать данные из MT4.<br />
Дальше определяем столбец куда надо сохранять данные и первой верхней ячейке этого столбца присваиваем имя. <strong>QUOTE_COLLECT</strong>.<span id="more-85"></span><br />
Сохраняем файл как <strong>Excel Macro Enabled Workbook (.xlsm)</strong>.<br />
Запускаем MetaTrader и получаем приблизительно такой вид &#8230;<a href="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-1.jpg"><img class="aligncenter" src="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-1-s.jpg" alt="" /></a>Теперь надо написать небольшую программку на VBA.<br />
Алгоритм программы следующий &#8211; через определенный промежуток времени, считываются данные из ячейки с именем <strong>GBPUSD_QUOTE</strong> и записываются в столбец с под ячейкой <strong>QUOTE_COLLECT</strong>. Интервал времени считывания должен устанавливатся пользователем (по умолчанию интервал &#8211; 1 секунда).Все понятно? Начинаем.<br />
Заходим в редактор VBA (сочетание клавиш <strong>Alt+F11</strong>) и создаем форму (<strong>UserForm1</strong>) и модуль (<strong>Module1</strong>) для записи VBA кода.<br />
На форму помещаем текстовое поле (<strong>TextBox1</strong>), текстовую метку (<strong>Label1</strong>) и две кнопочки (<strong>CommandButton1</strong>, <strong>CommandButton2</strong>)<br />
Для наглядности, можно изменить свойства <strong>Caption</strong> у формы и кнопок.<br />
Я присвоил <strong>Caption</strong> форме как &#8211; <strong>Сохраняем Котировки &#8230;</strong> , а кнопкам &#8211; <strong>Старт</strong> и <strong>Стоп</strong>.<br />
В свойстве <strong>Value</strong> поля <strong>TextBox1</strong> записываем <strong>1</strong>, а у метки <strong>Label1</strong> в <strong>Caption</strong> пишем: <strong>Интервал считывания котировок в секундах</strong>.<br />
Получаем вот такую форму &#8230;<a href="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-2.jpg"><img class="aligncenter" src="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-2.jpg" alt="" /></a>Дальше начинаем писать сам код.<br />
В <strong>Module1</strong> создаем процедуру <strong>CollectQuoteRun</strong> для запуска формы <strong>UserForm1</strong>:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="vb" style="font-family:monospace;"><span style="color: #000080;">Sub</span> CollectQuoteRun()
UserForm1.Show
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span></pre></td></tr></table></div>

<p>Затем переходим к программированию формы.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
</pre></td><td class="code"><pre class="vb" style="font-family:monospace;"><span style="color: #008000;">'----------------------
</span><span style="color: #008000;">'создаем глобальную переменную для управления программой
</span><span style="color: #000080;">Public</span> StartStop <span style="color: #000080;">As</span> <span style="color: #000080;">Integer</span>
<span style="color: #008000;">'----------------------
</span><span style="color: #008000;">'код для кнопки &amp;quot;Старт&amp;quot;
</span><span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> CommandButton1_Click()
<span style="color: #000080;">Dim</span> PauseTime, Start
<span style="color: #000080;">Dim</span> LastQuote <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>
<span style="color: #008000;">'передаем переменной значение времени паузы
</span>PauseTime = UserForm1.TextBox1.Value
<span style="color: #008000;">'устанавливаем курсор на ячейку под которой будут записыватся данные
</span>Range(&amp;quot;QUOTE_COLLECT&amp;quot;).<span style="color: #000080;">Select</span>
StartStop = 1
<span style="color: #008000;">'запускаем цикл обращения к ячейке с данными из дде
</span><span style="color: #000080;">Do</span> <span style="color: #000080;">While</span> StartStop = 1
<span style="color: #008000;">'перемещаем курсор на одну ячейку вниз
</span>ActiveCell.Offset(1, 0).<span style="color: #000080;">Select</span>
<span style="color: #008000;">'записываем в переменную значение котировок
</span>LastQuote = Range(&amp;quot;GBPUSD_QUOTE&amp;quot;).Value
<span style="color: #008000;">'записываем в переменную значение текущего времени в секундах
</span>Start = Timer
<span style="color: #008000;">'запускаем цикл для задержки времени (по дефолту 1 секунда)
</span><span style="color: #000080;">Do</span> <span style="color: #000080;">While</span> Timer &amp;lt; Start + PauseTime
DoEvents
<span style="color: #000080;">Loop</span>
<span style="color: #008000;">'спустя одну секунду, записываем значение котировок в нужном месте
</span>ActiveCell.Value = LastQuote
<span style="color: #008000;">'находимся в цикле пока переменная StartStop = 1
</span><span style="color: #000080;">Loop</span>
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span>
<span style="color: #008000;">'--------------------------
</span><span style="color: #008000;">'код для кнопки &amp;quot;Стоп&amp;quot;
</span><span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> CommandButton2_Click()
<span style="color: #008000;">'передаем переменной значение 2 для остановки цикла
</span>StartStop = 2
<span style="color: #008000;">'закрываем форму
</span>Unload Me
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span>
'--------------------------</pre></td></tr></table></div>

<p>Сохраняем документ и запускаем наш макрос. В появившейся форме ставим количество секунд, через которое нужно сохранять данные. Нажимаем кнопку <strong>Старт</strong>. Пьем кофе и наблюдаем как записываются котировки.<a href="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-3.jpg"><img class="aligncenter" src="http://img.myspreadsheet.info/files/vba-macro-mt4-dde-excel-quote-collect-3-s.jpg" alt="" /></a>Такой вот, простенький макрос получился.<br />
Если есть вопросы &#8211; <span style="text-decoration: underline;">welcome to comments!</span></p>
<p>Двери Montblanc! Покупай <a href="http://www.beloknadveri.ru" title="балконные рамы">окна</a> в коттедж в Крупках на сайте http://beloknadveri.ru</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myspreadsheet.info/metatrader4-dde-excel-2007-soxranenie-kotirovok-na-liste.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Создание простых макросов в Zoho Sheet</title>
		<link>http://www.myspreadsheet.info/sozdanie-prostyx-makrosov-v-zoho-sheet.html</link>
		<comments>http://www.myspreadsheet.info/sozdanie-prostyx-makrosov-v-zoho-sheet.html#comments</comments>
		<pubDate>Thu, 30 Oct 2008 21:38:26 +0000</pubDate>
		<dc:creator>egor</dc:creator>
				<category><![CDATA[All]]></category>
		<category><![CDATA[Zoho]]></category>
		<category><![CDATA[vba]]></category>
		<category><![CDATA[zoho sheet]]></category>
		<category><![CDATA[макросы]]></category>

		<guid isPermaLink="false">http://www.myspreadsheet.info/?p=24</guid>
		<description><![CDATA[Я уже упоминал ранее, что в таблицах онлайн офиса Zoho есть возможность использовать макросы. Создавать несложные макросы в Zoho Sheet также просто как и в Excel. Для этого можно воспользоваться встроенным рекордером. Допустим, необходимо создать совершенно бесполезный макрос, который копирует данные из одной ячейки и вставляет их в соседнюю ячейку справа. Идем в меню Macros [...]]]></description>
			<content:encoded><![CDATA[<p>Я уже упоминал ранее, что в <a href="http://www.myspreadsheet.info/zoho-sheet-novie-vozmognosti.html">таблицах онлайн офиса Zoho есть возможность использовать макросы</a>.<br />
Создавать несложные макросы в Zoho Sheet также просто как и в Excel. Для этого можно воспользоваться встроенным рекордером.<br />
Допустим, необходимо создать совершенно бесполезный макрос, который копирует данные из одной ячейки и вставляет их в соседнюю ячейку справа.<span id="more-24"></span></p>
<p>Идем в меню Macros &#8211; Record Macro.<br />
<img class="aligncenter" title="macro Zoho Sheet" src="http://img-fotki.yandex.ru/get/3006/tcomando.0/0_445_91d22af8_L" alt="" width="216" height="187" /></p>
<p>В появившемся окошке пишем имя макроса, можно записать описание макроса и нажимаем Start Recording.</p>
<p><img class="aligncenter" src="http://img-fotki.yandex.ru/get/3100/tcomando.0/0_446_3f595b5_L" alt="" width="472" height="339" /></p>
<p>Сверху в тулбаре появляется бар состояния и управления рекордера.<br />
Теперь все действия с таблицей (перемещение по ячейкам, ввод данных, копирование, вставка, удаление &#8230; ) записывает макро-рекордер.<br />
Проделав все необходимые операции, останавливаем запись кнопкой Stop Recording и закрываем тулбар рекордера.</p>
<p>Дальше можно вызвать через Alt+F11 редактор макросов и внести изменения в код, если это необходимо. Из скриншота редактора видно что в Zoho Sheet используется обыкновенный VBA, как и в Excel.</p>
<p><a href="http://img-fotki.yandex.ru/get/3000/tcomando.0/0_447_9f488988_orig"><img class="aligncenter" src="http://img-fotki.yandex.ru/get/3000/tcomando.0/0_447_9f488988_L" alt="" width="500" height="258" /></a></p>
<p>Сохранив изменения и саму таблицу, можно запустить макрос на выполнение. К сожалению, в Zoho пока не предусмотрено присвоение клавишных комбинаций для запуска конкретного макроса. Поэтому через меню или Alt+F8, вызываем список доступных макросов (в нашем примере там один макрос &#8220;test&#8221;). Кликнув по названию &#8211; запускаем макрос и наблюдаем результат.</p>
<p>Для тех кто знаком с VBA &#8211; написание макросов в Zoho не составляет трудностей.<br />
Пример более сложного макроса можно посмотреть <a href="http://public.sheet.zoho.com/public.do?docurl=SZs82AEOxWw%3D&amp;name=ylVYe9SlolfwNdUZiLQjeQ%3D%3D">здесь</a>. После ввода данных в ячейку колонки &#8220;Symbol&#8221; макрос, используя встроенную функцию STOCK(), получает последние данные о цене акции. Дальше введя цену покупки и количество, рассчитывается изменение, а точнее &#8211; прибыль или убыток по данной акции. Открыв редактор VBA можно увидеть сам код макроса.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myspreadsheet.info/sozdanie-prostyx-makrosov-v-zoho-sheet.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zoho Sheet &#8211; новые возможности</title>
		<link>http://www.myspreadsheet.info/zoho-sheet-novie-vozmognosti.html</link>
		<comments>http://www.myspreadsheet.info/zoho-sheet-novie-vozmognosti.html#comments</comments>
		<pubDate>Thu, 14 Aug 2008 21:49:09 +0000</pubDate>
		<dc:creator>egor</dc:creator>
				<category><![CDATA[All]]></category>
		<category><![CDATA[Zoho]]></category>
		<category><![CDATA[Новости]]></category>
		<category><![CDATA[zoho sheet]]></category>
		<category><![CDATA[макросы]]></category>

		<guid isPermaLink="false">http://www.myspreadsheet.info/?p=11</guid>
		<description><![CDATA[На днях, разработчики виртуального офиса Zoho добавили в электронные таблицы &#8211; Zoho Sheet новую функцию записи и воспроизведения макросов. Об этом было заявлено на официальном блоге Zoho. Саму возможность выполнять макросы разработчики Zoho анонсировали еще в апреле. Подробнее о макросах виртуального офиса Zoho можно почитать здесь.]]></description>
			<content:encoded><![CDATA[<p>На днях, разработчики виртуального офиса Zoho добавили в электронные таблицы &#8211; Zoho Sheet новую функцию записи и воспроизведения макросов. <a href="http://blogs.zoho.com/general/macro-recording-playback-in-zoho-sheet/">Об этом было заявлено на официальном блоге Zoho</a>. Саму возможность выполнять макросы разработчики Zoho анонсировали еще в апреле. Подробнее о макросах виртуального офиса Zoho можно почитать <a href="http://vbmacros.wiki.zoho.com/">здесь</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myspreadsheet.info/zoho-sheet-novie-vozmognosti.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
