<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16900&amp;type=atom" />
	<updated>2022-02-17T11:57:49Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=16900</id>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=152261#p152261" />
			<content type="html"><![CDATA[<p><strong>andypetr</strong>, на будущее: у нас не принято отвечать в темах, если участнику было сделано замечание, а он не отреагировал.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-02-17T11:57:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=152261#p152261</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=152260#p152260" />
			<content type="html"><![CDATA[<p><strong>Nason</strong>, приветствую.</p><p>Предлагаю рассмотреть мой свежий файл, я изменил систему ответов под Да/Нет, и заполнил анкету вашими вопросами.</p><ul><li><p>Файл с именем debug_VBA_анкета.xlsb запустится в режиме разработчика (отладки).<br />Режим разработчика нужен для редактирования таблицы анкетирования, т.к. в обычном режиме щелчки мышью и поведение активной ячейки контролируются макросами.<br />В этом режиме можно переключаться на обычный режим (Alt-F12), при этом очистятся предыдущие ответы и статистика.</p></li><li><p>Если убрать &quot;debug_&quot; из начала названия, то файл запустится в обычном режиме, для ввода ответов пользователем.</p></li><li><p>Лист Тест - само анкетирование, лист Стат - статистика ввода ответов (в обычном режиме лист Стат скрыт от пользователя).</p></li><li><p>В обычном режиме (анкетирование пользователя) активная ячейка &quot;не выпускается&quot; из колонок ответов (столбцы C и D листа Тест).<br />Заголовки колонок ответов выделены зеленоватым цветом.<br /></p></li><li><p>Ответы вводятся нажатием Enter, либо щелчком ПКМ, либо двойным щелчком ЛКМ.<br />При этом знак &quot;V&quot; проставляется в графе &quot;Верно&quot;, знак &quot;O&quot; проставляется в графе &quot;Не верно&quot;.</p></li></ul><p>Нужно более подробное описание?</p><p>PS. Что касается </p><div class="quotebox"><blockquote><p>Ну вот, у меня &quot;выкашивает&quot; не только диапазон Д3-E74</p></blockquote></div><p> - то в вашем коде потерялось вложенное условие <strong>If .Borders(xlDiagonalUp).LineStyle = xlNone</strong>:<br /></p><div class="codebox"><pre><code> 
    &#039; Работаем только с выделением 1 ячейки:
    With ActiveCell
        If (Not Application.Intersect(Target, Me.Range(&quot;D3:E74&quot;)) Is Nothing) Then
            If .Borders(xlDiagonalUp).LineStyle = xlNone Then
                &#039; Первый раз - пока не было зачёркивания:
                .HorizontalAlignment = xlRight
                .Borders(xlDiagonalUp).LineStyle = xlContinuous
                .Borders(xlDiagonalUp).Weight = xlThick
            Else
                &#039; Второй раз:
                .HorizontalAlignment = xlLeft
                .Borders(xlDiagonalDown).LineStyle = xlContinuous
                .Borders(xlDiagonalDown).Weight = xlThick
            End If
        End If
    End With
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[andypetr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40320</uri>
			</author>
			<updated>2022-02-17T10:41:13Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=152260#p152260</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=152126#p152126" />
			<content type="html"><![CDATA[<p><strong>Nason</strong>, ознакомьтесь, пожалуйста, с <a href="https://forum.script-coding.com/misc.php?action=rules">Правилами</a>, отредактируйте свой пост. Обратите внимание на оформление <a href="https://forum.script-coding.com/misc.php?action=rules#code-formatting">кода</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-02-10T09:26:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=152126#p152126</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=152124#p152124" />
			<content type="html"><![CDATA[<p>Доброго тайма! Ну вот, у меня &quot;выкашивает&quot; не только диапазон Д3-E74 (.</p><p>Private Sub Worksheet_SelectionChange(ByVal Target As Range)<br />&nbsp; &nbsp; If Target.Count = 1 Then<br />&nbsp; &nbsp; &nbsp; &nbsp; &#039; Работаем только с выделением 1 ячейки:<br />&nbsp; &nbsp; &nbsp; &nbsp; With ActiveCell<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; If (Not Application.Intersect(Target, Me.Range(&quot;D3:E74&quot;)) Is Nothing) Then</p><br /><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039; Первый раз - пока не было зачёркивания:<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .HorizontalAlignment = xlRight<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .Borders(xlDiagonalUp).LineStyle = xlContinuous<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .Borders(xlDiagonalUp).Weight = xlThick<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Else<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039; Второй раз:<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .HorizontalAlignment = xlLeft<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .Borders(xlDiagonalDown).LineStyle = xlContinuous<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .Borders(xlDiagonalDown).Weight = xlThick<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; End If<br />&nbsp; &nbsp; &nbsp; &nbsp; End With<br />&nbsp; &nbsp; End If<br />End Sub</p>]]></content>
			<author>
				<name><![CDATA[Nason]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42295</uri>
			</author>
			<updated>2022-02-10T03:44:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=152124#p152124</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=151982#p151982" />
			<content type="html"><![CDATA[<p><strong>Nason</strong>, приветствую.<br />Выдалась свободная неделя, и я немного поэкспериментировал на эту тему. Возможно, файл будет полезным.<br />Имя &quot;debug_...&quot; включает режим отладки (разработчика). В этом режиме можно переключаться на обычный (Alt-F12).<br />Лист Тест - само анкетирование, лист Стат - статистика (собирается в обычном режиме).<br />Более подробное описание напишу позже, если надо.</p>]]></content>
			<author>
				<name><![CDATA[andypetr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40320</uri>
			</author>
			<updated>2022-02-04T18:53:05Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=151982#p151982</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=151766#p151766" />
			<content type="html"><![CDATA[<p>Благодарю за помощь <strong>andypetr</strong>! Буду разбираться. Это очень нужная вещь, хоть кажется простой и очевидной для профессионалов. Понимаю, что много спрашиваю, но оч.нужно при анкетировании знать поведение респондента - если он меняет поведение при анкетировании, это является косвенным доказательством сомнения или лжи. Не могли бы подсказать как отследить временные характеристики анкетирования, т.е сколько человек тратит время при переходе от одной ячейки с ответом к другой. Может быть даже трассу ответов - т.е. на какие отвечает сразу, какие оставляет на потом.</p>]]></content>
			<author>
				<name><![CDATA[Nason]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42295</uri>
			</author>
			<updated>2022-01-23T02:24:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=151766#p151766</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=151763#p151763" />
			<content type="html"><![CDATA[<p><strong>Nason, приветствую.</strong></p><p>Не всё понятно, я просто эскиз набросал - событие листа &quot;выделение ячейки/диапазона&quot;.<br />Может быть, задача сложнее, и при этом с предыдущей ячейки нужно снимать форматирование? <br />Либо не срабатывает событие при повторном выделении активной ячейки?<br />Для таких случаев нужно заводить глобальную переменную, видимо.</p><div class="codebox"><pre><code>Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count = 1 Then
		&#039; Работаем только с выделением 1 ячейки:
        With ActiveCell
            If .Borders(xlDiagonalUp).LineStyle = xlNone Then
                &#039; Первый раз - пока не было зачёркивания:
                .HorizontalAlignment = xlRight
                .Borders(xlDiagonalUp).LineStyle = xlContinuous
                .Borders(xlDiagonalUp).Weight = xlThick
            Else
                &#039; Второй раз:
                .HorizontalAlignment = xlLeft
                .Borders(xlDiagonalDown).LineStyle = xlContinuous
                .Borders(xlDiagonalDown).Weight = xlThick
            End If
        End With
    End If
End Sub
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[andypetr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40320</uri>
			</author>
			<updated>2022-01-22T21:11:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=151763#p151763</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBA: Зачеркивание ячейки в ехель для заполнения анкеты]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=151711#p151711" />
			<content type="html"><![CDATA[<p>Приветствую! Задача по автоматизации сбора данных при анкетировании - как сделать изменение форматирования ячейки при ее выделении? Исходно - текст находится по центру, необходимо, чтобы при выделении ячейки произошло форматирование текста вправо и одно диагональное зачеркивание ячейки жирной линией (чтобы человек увидел, если плоховато зрение). При&nbsp; повторном выделении ячейки (если человек, который заполняет анкету передумал) - форматирование влево и добавление еще одного диагонального перечеркивания, т.е. получается ячейка с текстом зачеркивается крестом.&nbsp; Проблема в том, что диагональное зачеркивание прописывается только для конкретной ячейки, а не для активной. Заранее благодарю за ответы!</p>]]></content>
			<author>
				<name><![CDATA[Nason]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42295</uri>
			</author>
			<updated>2022-01-22T01:38:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=151711#p151711</id>
		</entry>
</feed>
