<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Работа с переменными через Clipboard]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5829</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5829&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Работа с переменными через Clipboard».]]></description>
		<lastBuildDate>Wed, 25 May 2011 05:02:54 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48652#p48652</link>
			<description><![CDATA[<p>Во! вот это мне и надо было узнать! спасибо большое!<br />теперь все гуд будет!</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Wed, 25 May 2011 05:02:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48652#p48652</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48630#p48630</link>
			<description><![CDATA[<p>Как понятно из моего примера, при копировании из ячейки в буфер обмена попадает не только то, что мы видим в ячейке, но и знак переноса строки. Если в ячейке число, то для проведения математических операций с ним нужно сначала удалить знак переноса строки. Это можно сделать посредством <em><a href="http://script-coding.com/AutoHotkey/RegExReplace.html">RegExReplace</a></em>:<br /></p><div class="codebox"><pre><code>F11::
clipboard =  ; освобождаем буфер обмена
WinActivate,  Microsoft Excel
;активация окна екселя

MouseClick, Left, 70,140
Sleep 100
Send, R
Sendraw, 4
sleep 100
Send, {enter}
;Переход в ячейку с нужным значением

Send, ^{vk43} ; Ctrl + C
;сохранение численного значения в буфере обмена
ClipWait, 2   ; ждём, когда в буфере появится текст в течение 2 секунд
if ErrorLevel
{
   MsgBox, Буфер обмена пуст!
   Return
}
; MsgBox, % &quot;|&quot; Clipboard &quot;|&quot;
MsgBox, % y := RegExReplace(Clipboard, &quot;\R&quot;) + 1</code></pre></div><div class="quotebox"><cite>zodiacpavel пишет:</cite><blockquote><p>а ^{vk43}<br />это что за конструкция у тебя такая?</p></blockquote></div><p>vk43 — это виртуальный код клавиши &quot;с&quot;. При посылке шорткатов с буквенными клавишами лучше пользоваться не их названиями, а именно виртуальными кодами, т. к. на некоторых машинах при русской раскладке сочетание ^c не будет работать.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 23 May 2011 12:59:27 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48630#p48630</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48629#p48629</link>
			<description><![CDATA[<p>а ^{vk43} <br />это что за конструкция у тебя такая?</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Mon, 23 May 2011 12:51:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48629#p48629</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48628#p48628</link>
			<description><![CDATA[<p>Ну это понятно, спасибо.<br />А возможно ли этому значению буфера обмена присвоить значение переменной, и с ней провести математические манипуляции?<br />например, копируем число 1; в буфере обмена clipboard=1.<br />Присвоим значению clipboard переменную х:<br /></p><div class="codebox"><pre><code>x=%clipboard%</code></pre></div><p>затем проведем математические манипуляции:<br /></p><div class="codebox"><pre><code>y:=1+x</code></pre></div><p>возможно ли получить на выходе 2?</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Mon, 23 May 2011 12:43:07 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48628#p48628</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48625#p48625</link>
			<description><![CDATA[<p>В общем понял твою проблему. Запусти такой код со своим первоначальным примером, и тоже поймёшь, в чём причина:<br /></p><div class="codebox"><pre><code>F11::
clipboard =  ; освобождаем буфер обмена
WinActivate,  Microsoft Excel
;активация окна екселя

MouseClick, Left, 70,140
Sleep 100
Send, R
Sendraw, 4
sleep 100
Send, {enter}
;Переход в ячейку с нужным значением

Send, ^{vk43} ; Ctrl + C
;сохранение численного значения в буфере обмена
ClipWait, 2   ; ждём, когда в буфере появится текст в течение 2 секунд
if ErrorLevel
{
   MsgBox, Буфер обмена пуст!
   Return
}
MsgBox, % &quot;|&quot; Clipboard &quot;|&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 23 May 2011 11:14:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48625#p48625</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48624#p48624</link>
			<description><![CDATA[<p>Да, правильно, а перед тем как копировать в экселе значение в ячейке, эту ячейку надо выделить.</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Mon, 23 May 2011 11:11:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48624#p48624</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48623#p48623</link>
			<description><![CDATA[<p>Перед тем, как копировать в буфер обмена с помощью Ctrl + C какой-либо текст, нужно его сначала выделить.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 23 May 2011 11:05:05 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48623#p48623</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48622#p48622</link>
			<description><![CDATA[<p>Попробуй в экселе в произвольную в ячейку ввести любое число, затем вручную скопировать это число, нажать контр+с (занести в буфер обмена это число).<br />затем вот это:</p><div class="codebox"><pre><code>F7
x = %clipboard%
; присвоение значения переменной

y:=x+1
; пример обработки переменной

msgbox, %y%
; вывод значения</code></pre></div><p>не понимаю почему числа не хочет считывать из екселевских ячеек, но все работает если скопировать в ворде любую цифру?</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Mon, 23 May 2011 10:46:42 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48622#p48622</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48621#p48621</link>
			<description><![CDATA[<p>Я не пойму, а что у тебя в ячейке, из которой ты берёшь текст? При запуске этого кода у меня получается &quot;R4&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 23 May 2011 10:05:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48621#p48621</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Работа с переменными через Clipboard]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48619#p48619</link>
			<description><![CDATA[<p>Возможна ли работа с переменными, присвоенными из&nbsp; буфера обмена (числовые значения)?</p><div class="codebox"><pre><code>F7::

WinActivate,  Microsoft Excel
;активация окна екселя

MouseClick, Left, 70,140
Sleep 100
Send, R
Sendraw, 4
sleep 100
Send, {enter}
;Переход в ячейку с нужным значением

Send, ^c ; копирование данных в буфер обмена
;сохранение численного значения в буфере обмена 

x = %clipboard%
; присвоение значения переменной

y:=x+1
; пример обработки переменной

msgbox, %y%
; вывод значения</code></pre></div><p>Значение y получается пустым.&nbsp; <br />То есть, из буфера обмена числа не воспринимаются?<br />Как сделать так, чтоб это было возможно, или AHK не воспринимает значения из вне?</p>]]></description>
			<author><![CDATA[null@example.com (zodiacpavel)]]></author>
			<pubDate>Mon, 23 May 2011 04:56:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48619#p48619</guid>
		</item>
	</channel>
</rss>
