Автоматически заполнить бланка

В лицее хотели учиться 200 детей. но школа набирала только 75 учеников. на указанном сайте шл обратный отсчт. в назначенное

В лицее хотели учиться 200 детей. Но школа набирала только 75 учеников. На указанном сайте шёл обратный отсчёт.
Обратный отсчёт перед открытием формы для поступления в школу
В назначенное время открывалась форма и родители начинали её заполнять. Форма появлялась частями — какая-то информация подгружалась с другой страницы.

Вид формы для подачи заявки в школу

Те, кто не уложился в 1,5 минуты, оказались за бортом. Подробнее о том, как сейчас поступают в школы.

Первое, что пришло на ум: по клику на кнопку копировать информацию в буфер обмена, тем самым сокращая время на выделение текста [инструмент сделала, чтобы любой мог воспользоваться — не нужно уметь программировать].

Редактор JavaScript Mozilla Firefox

Если нажать одновременно Shift F4, появится окошко, куда можно написать любой JavaScript и выполнить его, нажав кнопку «Запустить». Например, вот так можно вывести на экране сообщение

alert("Моё сообщение");

Простой редактор JavaScript в Mozilla Firefox

Скрипт автоматического заполнения полей формы

Второго шанса у меня не было, я не знала что могли изменить разработчики, какие данные будут передаваться, поэтому перестраховалась. В редакторе запускала такой JS.


requestAnimationFrame(step00);
var razstart = null; function step00(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('input[type="text"], input:not([type])')).filter(function(a) {return a.offsetHeight > '5'});  
  if (!razstart) razstart = timestamp;
  if (raz.length // пока таких полей не станет больше 5, повторять функцию (надёжнее чем задержка setTimeout и setInterval)
    requestAnimationFrame(step00);
  } else {  
    raz[0].value = 'Иванова';
    raz[1].value = 'Наталья';
    raz[2].value = 'Ивановна';
    raz[3].value = '0000';
    raz[4].value = '000000';
    raz[5].value = 'ОТДЕЛОМ УФМС РОССИИ ПО ...';
    raz[6].value = '01.01.2009';
    for (var i = 0; i // эмулировать (имитировать) действия посетителя
      raz[i].dispatchEvent(new Event("change"));
      raz[i].dispatchEvent(new Event("change"));
      raz[i].dispatchEvent(new Event("keydown"));
      raz[i].dispatchEvent(new Event("keyup"));
    }
    requestAnimationFrame(step01);  
  }
}


var razstart = null; function step01(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('input[type="text"], input:not([type])')).filter(function(a) {return (a.offsetHeight > '5') && (a.value != 'Наталья') && (a.value != 'Ивановна') && (a.value != '0000') && (a.value != '000000') && (a.value != 'ОТДЕЛОМ УФМС РОССИИ ПО ...') && (a.value != '01.01.2009')});  
  if (!razstart) razstart = timestamp;
  if (raz.length // адрес регистрации
var razstart = null; function step02(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('input[type="text"], input:not([type])')).filter(function(a) {return (a.offsetHeight > '5') && (a.value != 'Иванова') && (a.value != 'Наталья') && (a.value != 'Ивановна') && (a.value != '0000') && (a.value != '000000') && (a.value != 'ОТДЕЛОМ УФМС РОССИИ ПО ...') && (a.value != '01.01.2009') && (a.value != 'Иванов') && (a.value != 'Иван') && (a.value != 'Иванович') && (a.value != '01.01.2009') && (a.value != 'город Самара') && (a.value != 'III-ЕР') && (a.value != '000000')});
  if (!razstart) razstart = timestamp;
  if (raz.length  '5') && (a.innerHTML.indexOf('егистрац') != -1)})[0].dispatchEvent(new Event("click"));  
    requestAnimationFrame(step03);
    requestAnimationFrame(step04);
    requestAnimationFrame(step05);
  }
}


var razstart = null; function step03(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('button')).filter(function(a) {return (a.offsetHeight > '5') && (a.innerHTML.indexOf('mail') != -1)});
  if (!razstart) razstart = timestamp;
  if (raz.length == 0) {
    requestAnimationFrame(step03);
  } else {
    raz[0].dispatchEvent(new Event("click"));
    var razI = Array.prototype.slice.call(document.querySelectorAll('input[type="email"]')).filter(function(a) {return (a.offsetHeight > '5') && (a.value == '')})[0];
    razI.value = 'n.mitra@yandex.ru';
    razI.dispatchEvent(new Event("change"));
    razI.dispatchEvent(new Event("change"));
  }
}


var razstart = null; function step04(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('button')).filter(function(a) {return (a.offsetHeight > '5') && (a.innerHTML.indexOf('агруз') != -1)});
  if (!razstart) razstart = timestamp;
  if (raz.length == 0) {
    requestAnimationFrame(step04);
  } else {
    raz[0].dispatchEvent(new Event("click"));
  }
}


var razstart = null; function step05(timestamp) {
  var raz = Array.prototype.slice.call(document.querySelectorAll('input[type="checkbox"]')).filter(function(a) {return a.offsetHeight > '5'});
  if (!razstart) razstart = timestamp; if (raz.length == 0) {
    requestAnimationFrame(step05);
  } else {
    raz[0].checked = true;  
    raz[0].dispatchEvent(new Event("click"));  
    raz[0].dispatchEvent(new Event("click"));
  }
}

С выпадающими списками на сайте что-то перемудрили, я решила не искушать судьбу :)

В статье представлено несколько трюков, которые вы, возможно, не знали и которые вы найдёте полезными в своих разработках.

1. Изображение в качестве фона, которое пропадает при вводе текста.

Вы можете добавить фоновое изображение также, как и в любой другой элемент. В этом случае стиль по умолчанию для textarea изменяется, а именно бордер толщиной в 1px изменяется на скошенную границу. Исправляется это явным указанием бордера.

Textarea {
background: url(images/benice.png) center center no-repeat;
border: 1px solid #888;
}

Фоновое изображение может повлиять на читаемость текста. Поэтому фоновое изображение надо убирать при получении фокуса и возвращать его, если textarea осталась без текста. Например, используя jQuery это можно сделать таким образом:

$(«textarea»)
.focus(function() {
$(this).css(«background», «none»);
})
.blur(function() {
if ($(this).value == «») {
$(this).css(«background», «url(images/benice.png) center center no-repeat»);
}
});

2. Placeholder в HTML5

В HTML5 появился новый атрибут, называемый placeholder . Значение этого атрибута показывается в текстовом элементе и исчезает при получении фокуса, а также в случае когда в элементе введён текст.

HTML5 placeholder поддерживается в следующих браузерах: Safari 5, Mobile Safari, Chrome 6, и Firefox 4 alpha.

3. Placeholder, HTML5 с поддержкой старых браузеров используя jQuery

Самый простой способ проверить поддерживается ли атрибут браузером это проверить с помощью javaScript:

Function elementSupportsAttribute(element, attribute) {
var test = document.createElement(element);
return (attribute in test);
};

Затем можно написать код, который будет срабатывать если браузер не поддерживает атрибут placeholder .

If (!elementSupportsAttribute(«textarea», «placeholder»)) {
// Если браузер не поддерживает атрибут, то выполняется код jQuery
$(«#example-three»)
.data(«originalText», $(«#example-three»).text())
.css(«color», «#999»)
.focus(function() {
var $el = $(this);
if (this.value == $el.data(«originalText»)) {
this.value = «»;
}
})
.blur(function() {
if (this.value == «») {
this.value = $(this).data(«originalText»);
}
});
} else {
// Если же браузер поддерживает HTML5, то просто используем эту возможность
$(«#example-three»)
.attr(«placeholder», $(«#example-three»).text())
.text(«»);
}

4. Удаляем обводку textarea

Браузеры на движках webkit, а также в FireFox 3.6, обводят textarea , когда он находится в фокусе. Удалить эту обводку можно используя css-свойство outline для webkit-браузеров. Для FireFox используется свойство -moz-appearance , либо можно просто установить элементу бордер или фон.

Textarea {
outline: none;
-moz-appearance: none;
border: 1px solid #999; /* указание этого свойства также удалит обводку в FireFox */
}

5. Запрет изменения размера

Webkit-браузеры добавляют к textarea визуальный элемент в правом нижнем углу, который позволяет изменять размер текстовой области. Если вы хотите убрать эту возможность, то вам необходимо использовать следующее css-свойство:

Textarea {
resize: none;
}

6. Добавление возможности изменения размера

jQuery UI позволяет добавить возможность изменения размера для textarea. Это работает для всех браузеров, а для webkit-браузеров подменяет стандартное поведение. Для того, чтобы использовать эту возможность, необходимо подключить jquery.ui и написать следующий код:

$(«textarea»).resizable();

7. Изменение размера под содержимое

James Padolsey написал удобный jQuery-скрипт который позволяет автоматически изменять размер textarea под его содержимое. Похоже что этого плагина больше нет, но можно использовать например вот этот . Плагин содержит много настроек, но самый простой способ его использовать это:

$(«textarea»).autoResize();

8. Nowrap

Чтобы не переносить слова на новые строки, для всех элементов используется css-свойство white-space , которое не работает с textarea . Для textarea необходимо использовать атрибут wrap .

9. Удаляем скролл-бары в IE

IE показывает вертикальный скролл-бар для всех textarea . Вы можете их спрятать используя overflow: hidden , но в таком случае он не будет показываться при увеличении контента. Поэтому правильнее использовать следующий подход:

Textarea {
overflow: auto;
}

В этом случае скролл-бар не будет отображаться когда в textarea помещается весь текст, но выведется в случае необходимости.

Примеры к статье вы можете посмотреть .

Тег (от англ. text
area
— область текста)
представляет собой элемент формы для создания области, в которую можно вводить несколько строк текста.

autocomplete

Этот атрибут помогает заполнить текстовое поле текстом, который был введён в нём ранее. Значения сохраняет и подставляет браузер, при этом автозаполнение по соображениям безопасности может отключаться пользователем в настройках браузера и не может в таком случае управляться атрибутом autocomplete .

Автозаполнение конкретного поля формы привязывается к его атрибуту name и при смене значения теряется.

Синтаксис

Значения

  • on — Включает автозаполнение текста.
  • off — Отключает автозаполнение.

Значение по умолчанию

Зависит от настроек браузера.

autofocus

Автоматически устанавливает фокус в текстовое поле. В таком поле можно сразу набирать текст без переключения курсора в текстовое поле.

Синтаксис

Значения

Значение по умолчанию

По умолчанию атрибут autofocus не установлен.

cols

Ширина текстового поля, которое определяется числом символов моноширинного шрифта. Иными словами, ширина задаётся количеством близстоящих букв одинаковой ширины по горизонтали. Если размер шрифта изменяется с помощью стилей, ширина также соответственно меняется.

Синтаксис

Значения

Значение по умолчанию

dirname

При наличии атрибута dirname на сервер отправляется пара имя/значение, где имя задаётся атрибутом dirname , а значение подставляется браузером. Для текста, идущего слева направо, значение будет ltr , а для текста справа налево (арабского, к примеру) значение будет rtl .

Синтаксис

Значения

Произвольная текстовая строка, которая служит именем параметра. Чтобы показать, что этот параметр указывает направление текста, обычно в конце строки добавляют.dir .

Значение по умолчанию

disabled

Блокирует доступ и изменение текстового поля. Оно в таком случае отображается серым и недоступным для активации пользователем. Кроме того, такое поле не может получить фокус путем нажатия на клавишу Tab, мышью или другим способом. Тем не менее, такое состояние поля можно менять с помощью скриптов.

Заблокированный в поле текст не передаётся на сервер.

Синтаксис

Значения

Значение по умолчанию

form

Связывает текстовое поле с формой по её идентификатору. Такая связь необходима в случае, когда поле по каким-либо причинам располагается за пределами

.

Синтаксис

Значения

Идентификатор формы (значение атрибута id элемента

).

Значение по умолчанию

maxlength

Устанавливает максимальное число символов, которое может быть введено пользователем в текстовом поле. Когда это количество достигается при наборе, дальнейший ввод становится невозможным.

Синтаксис

Значения

Любое целое положительное число.

Значение по умолчанию

minlength

Задаёт минимальное число символов, которое может быть введено пользователем в текстовом поле. Если число символов меньше указанного значения, то браузер выдаёт сообщение об ошибке и не отправляет форму.

Синтаксис

Значения

Любое целое положительное число.

Значение по умолчанию

name

Определяет уникальное имя элемента

Синтаксис

Значения

В качестве имени используется набор символов, включая числа и буквы. JavaScript чувствителен к регистру, поэтому при обращении к элементу

Значение по умолчанию

placeholder

Выводит подсказывающий текст внутри текстового поля, который исчезает при получении фокуса или наборе текста. В качестве подсказки обычно применяется короткий текст, состоящий из одного слова или фразы.

Синтаксис

Значения

Текстовая строка.

Значение по умолчанию

readonly

Когда к элементу

Синтаксис

Значения

Значение по умолчанию

По умолчанию это значение выключено.

required

Устанавливает текстовое поле обязательным для заполнения перед отправкой формы на сервер. Если в обязательном поле нет текста, браузер выведет сообщение, а форма отправлена не будет. Вид и содержание сообщения зависит от браузера и меняться пользователем не может.

Синтаксис

Значения

Значение по умолчанию

По умолчанию атрибут required выключен.

rows

Высота текстового поля, которое определяется количеством отображаемых строк без прокрутки содержимого. Если размер шрифта изменяется с помощью стилей, высота поля также соответственно меняется.

Синтаксис

Значения

Любое целое положительное число.

Значение по умолчанию

В HTML4 зависит от настроек браузера и операционной системы.

wrap

Атрибут wrap говорит браузеру, как осуществлять перенос текста в поле

Синтаксис

Значения

  • soft — Слова в текстовом поле переносятся механически, если они не поместились в размер области, но при отправке на сервер переносы не сохраняются.
  • hard — Длинный текст, который самостоятельно не помещается в поле по ширине, автоматически переносится на новую строку и вместе с переносами отправляется на сервер. Для работы требуется наличие атрибута cols .

Значение по умолчанию

Спецификации

Примеры

TEXTAREA

В основе этой статьи лежит следующая — . Я вношу некоторые коррективы и поправки в ту статью, меняю порядок для наглядности и понятности, а также предлагаю живые примеры. Итак.

Все предлагаемые хитрости делятся на три группы: «Базовые настройки», «Расширение возможностей с помощью jQuery» и «Решение проблемы исчезновения текста при клике». Начнём по порядку.

Базовые настройки textarea

Взгляните на скриншот. На нём представлено активное поле textarea (браузер Google Crome). Устраняем его некоторые, в той или иной степени, недостатки.

Расширение возможностей с помощью jQuery

    $(«textarea»).autoResize();

    Добавляем уголок для ресайза textarea
    . Для этого нужен не только сам jQuery, но и jQuery UI. Лично у меня адекватно эта примочка не работала. Может стоило попробовать другую версию jQuery UI.

    $(«textarea»).resizable();

Решение проблемы исчезновения текста в textarea при клике

    Решение HTML5 — placeholder
    . Этот атрибут в HTML5 помешает в текстовое поле textarea (для текстовых input»ов тоже актуально) светло-серый текст, который исчезает при клике на область. Если поле осталось пустым и вы делаете его неактивным, то текст появится вновь. Это свойство работает в Safari 5, Mobile Safari, Chrome 6 и Firefox 4 alpha.

    Изменяем бэкграунд textarea по клику
    . Для тех, у кого не работает placeholder, можно поиграться с бэкграундом. Задайте бэкграунд для текстового поля и затем настройте предлагаемый код jQuery.

    Focus(function() { $(this).css(«background», «none») })
    .blur(function() { if ($(this).value == «») { $(this).css(«background», «url(image.png) no-repeat») } });

    Изменяем содержание textarea по клику — аналог placeholder на jQuery
    . Делается довольно просто.

    $(«#example-three»)
    .data(«ShuBlog!», $(«#example-three»).text())
    .css(«color», «#ff9900»)
    .focus(function() {
    var $el = $(this);
    if (this.value == $el.data(«ShuBlog!»)) {
    this.value = «»;
    }
    })
    .blur(function() {
    if (this.value == «») {
    this.value = $(this).data(«ShuBlog!»);
    }
    });

    Однако в той статье, на которую была ссылка в самом начале, скрипт был сложнее и занимался он вот чем: он проверял существует ли атрибут placeholder и в случае положительного ответа, он создавал placeholder для тега, а в случае отрицательного ответа — показанный чуть выше скрипт. Смысл этих действий я не очень понял по нескольким причинам.
    Во-первых, если мы используем jQuery, то какая разница что за метод мы выберем? Не думаю, что в быстродействии это скажется. А во-вторых — placeholder имеет светлосерый текст, а если нам нужен другой цвет? В общем не ясно. Тем не менее полный скрипт приведу.

    function elementSupportsAttribute(element, attribute) {
    var test = document.createElement(element);
    if (attribute in test) {
    return true;
    } else {
    return false;
    }
    };
    $(document).ready(function(){
    if (!elementSupportsAttribute(«textarea», «placeholder»)) {
    $(«#example-three»)
    .data(«originalText», $(«#example-three»).text())
    .css(«color», «#ff9900»)
    .focus(function() {
    var $el = $(this);
    if (this.value == $el.data(«originalText»)) {
    this.value = «»;
    }
    })
    .blur(function() {
    if (this.value == «») {
    this.value = $(this).data(«originalText»);
    }
    });
    } else {
    $(«#example-three»)
    .attr(«placeholder», $(«#example-three»).text())
    .text(«»);
    }
    });

    Первые 8 строк — функция проверки существования атрибута (любого). В 10 строке мы проверяем есть ли атрибут placeholder, и в случае если нет, выполняются знакомые 11-24 строки, а если нет, то 26-28 строки. В оригинале у меня 28 строка не работала и я заменил её на упрощённую — .attr(«placeholder», «originalText»).

В общем это всё, что я хотел Вам сегодня рассказать. Чуть ниже ссылка с примерами.

Договорные отношения давно и прочно закрепились в нашей жизни, договора встречаются везде и повсеместно, практически ничто уже не обходится без заключения какого-либо договора. Предоставление услуг, выполнение работ, поставка материальных ценностей, аренда имущества, купля-продажа и многое другое — все это договоры. Договоры, как правило, составляются юристами и учитывают все нюансы той или иной деятельности. Кураторы же имеют дело с типовыми формами договоров и производят с ними однотипные, повторяющиеся действия, которые можно и нужно автоматизировать.

Итак, менеджеры или кураторы договоров, используя текстовый редактор, (например Microsoft Word) вносят изменения в типовые формы, шаблоны, корректируя определенные поля, такие как номер и дата договора, наименование контрагента, стоимость договора, паспортные данные, банковские реквизиты. При этом пересчитываются различные суммы, такие например как НДС, кстати суммы в договорах зачастую дублируются прописью. Для составления преамбулы договора, такие параметры как имена, фамилии и должности склоняются в различные падежи. Все это требует повышенного внимания и приводит к зрительным нагрузкам. Чем объемнее договор, чем больше в нем различных форм и приложений, тем сильнее желание автоматизировать его заполнение.

Надстройка для автоматизированного заполнения договоров в Word

Автоматическое заполнение договоров можно реализовать различными способами, но подробнее остановиться хотелось бы на наиболее удобном и доступном. И как ни странно такой способ заложен в самом текстовом редакторе Microsoft Word. Встроенный в редактор язык программирования Visual Basic for Application позволяет успешно автоматизировать рутинные задачи, к которым несомненно можно отнести и заполнение договоров. Видов договоров множество: договор подряда, договор поставки, договор аренды, договор купли-продажи, договор комиссии, кредитный договор и многое другое, но все они имеют приблизительно одинаковые поля для заполнения. Если эти поля разметить специальным образом в шаблоне договора, а необходимую информацию запросить у пользователя через диалоговое окно, то впоследствии можно программно заменить эти поля на необходимую информацию.

При этом часть рутинной работы пользователю выполнять все-таки придется при внесении данных в специальную форму — диалоговое окно, но лишь часть, все остальное будет делать уже машина. Запуск надстройки, вызов диалогового окна осуществляется нажатием кнопки, выведенной в меню, либо на ленту, в зависимости от приложения.

Использовать систему для ускоренного заполнения полей договора проще, чем кажется на первый взгляд. Для начала нужно определиться с теми параметрами, которые будут запрашиваться у пользователя надстройки и выбрать наиболее подходящую конфигурацию надстройки. Далее необходимо скачать и
установить надстройку для Word
по заполнению договоров. Предварительно разметить свой шаблон договора метками, описанными в документации к надстройке. Открыть шаблон договора и вызвать диалоговое окно надстройки. Затем заполнить поля диалогового окна (вручную заполняется только часть полей, другая часть формируется автоматически, например суммы, написанные прописью и даты) и запустить программу нажатием кнопки «OK».


Автоматическое заполнение договора между двумя юридическими лицами

В случае заключения договора между юридическими лицами изменяемыми (запрашиваемыми у пользователя в диалоговом окне) являются: наименования организаций, фамилии их представителей, адреса и банковские реквизиты. Различаться также могут суммы, валюты и налоговые ставки. Все эти параметры договора вынесены для заполнения на специальную форму — диалоговое окно.

В надстройке реализован выбор валюты (по умолчанию установлены рубли), преобразование даты, автоматический подсчет НДС с округлением до двух знаков после запятой (при наличии этого налога), автоматическое написание суммы договора и налога прописью, автоматическое распознавание пола подписанта по имени и отчеству с последующим склонением в родительный падеж (для преамбулы) должности, фамилии, имени и отчества. Если в данных подписантов вместо полных имен используются инициалы, то программе будет необходима подсказка пола подписанта при помощи опции М/Ж. После автоматического заполнения полей сформированный договор сохраняется под уникальным именем в папку, в которой хранится шаблон.

На практике чаще используется упрощенная модель надстройки, когда «свои» реквизиты указываются в тексте договора и изменениям не подлежат, а в диалоговом окне запрашиваются только данные контрагента.

видео по работе с надстройкой

Автоматическое заполнение договора между юридическим и физическим лицом

Договоры между юридическими и физическими лицами отличаются наличием паспортных данных одной из сторон. Отсюда и несколько другой набор полей в диалоговом окне, где кроме паспортных данных присутствуют адреса и телефоны. В остальном все механизмы аналогичны описанным в предыдущем пункте.

Возможности надстроек для заполнения договоров

Надстройки позволяют осуществлять:

1) выбор валюты;

3) автоматический подсчет НДС с округлением до двух знаков после запятой (при наличии этого налога);

4) автоматическое написание суммы договора и налога прописью;

5) автоматическое распознавание пола подписанта по имени и отчеству с последующим склонением в родительный падеж должности, фамилии, имени и отчества
(для преамбулы);

*Если в данных подписантов вместо полных имен используются инициалы, то программе будет необходима подсказка пола подписанта при помощи опции М/Ж.

6) автоматическое формирование инициалов подписантов;

7) автоматическое сохранение сформированного договора под уникальным именем в папку, в которой хранится шаблон;

8) импорт данных из диалогового окна в файл Excel;

9) экспорт данных из файла Excel в диалоговое окно.

Аналогичным образом можно настроить заполнение любых шаблонов документов для юристов, нотариусов, бухгалтеров, финансистов, сметчиков, риелторов и многих других.

Универсальная надстройка для Word по заполнению любых документов Word данными из Excel

Договоры, соглашения, доверенности, заказы, заявки, акты, квитанции и многое другое можно автоматически заполнять данными из Excel при помощи универсальной надстройки. Количество изменяемых полей в документе не привязано к полям диалогового окна поэтому пользователь сам определяет их количество и названия для кодов, используемых в шаблонах документов. Для заполнения активного документа Word достаточно указать файл Excel с исходными данными. Помимо этого предусмотрено массовое заполнение документов Word.

Каждый день пользователям интернета приходится заполнять различные формы на сайтах, в интернет-магазинах. И это часто отнимает наше драгоценное время.

Возьмем, к примеру сайт одного туроператора. Как много полей, неправда ли?

Как много полей, неправда ли?

И надо сказать, что достаточно обременительно заходить в каждое и выбирать. Особенно, если приходится это делать несколько раз.

Ведь подбор тура по заданным вами параметрам не всегда есть в наличии и приходится корректировать уловия. Но если же вы определенно решили найти тур, который 100% соответствует вашим требованиям, и не смотря на то, что места есть не всегда, то всякий раз заново вводить одни и те же параметры для поиска будет достаточно рутинным занятием.



Sergey Nivens / Shutterstock.com

В этом поможет нам программа — конструктор скриптов, позволяющих автоматизировать любые действия в браузере, которая называется .
Чтобы вы имели представление об этой программе, перечислю лишь базовый функционал.

Особенности программы XWeb Human Emulator

  • Автозаполнение форм и текстовых полей.
  • Запись и повтор работы с любым элементом сайта.
  • Сбор, сравнение, хранение и отправка данных.
  • Есть встроенный планировщик задач, который можно запускать в назначенное вами время.
  • Во время работы можно свернуть ее в систрэй. Это никак не скажется на производительности других приложений.

Как видите, даже этого достаточно, чтобы назвать программу функционально богатой.

А теперь, я на примере покажу, как можно автоматизировать процесс заполнения формы на сайте.

Автозаполнение формы

В адресную строку (выделено желтым маркером). Ниже, в правой части окна программы, подгружается веб-страница с формой для поиска и бронирования туров.

2.
Выбираем в главном меню раздел «Макрос» и нажимаем на «Запись».
Тоже самое можно сделать, нажав горячие клавиши Ctrl+Shift+R . Теперь программа будет записывать все наши действия в отдельный макрос.

Статья по теме:
Невыполнение сроков или отсутствие мотивации

3.
После того, как мы заполнили на сайте форму поиска тура и получили результат выборки, нужно остановить запись макроса.
В том же пункте меню «Макрос» нажать на «Остановить» или выполнить эту команду, нажав горячие клавиши Ctrl+Shift+S .

4.
Теперь, если нужно повторить поиск тура по указанным ранее параметрам, достаточно нажать все одну кнопочку «Выполнить».
Макрос за считанные секунды сам заполнит все поля и вы тут же получите результаты поиска.

Все кто отправлял посылки Почтой России сталкивался с проблемой заполнения почтовых бланков.

          Бланков много, и многие из них, не смотря на свои отличия, просто дублируют друг-друга. В некоторых бланках требуется несколько раз переписать адрес клиента, а  иногда полностью заполнить банковские реквизиты. Если вы отправляете 1-2 посылки в день, это не доставляет значительных неудобств, но что делать,  если вам приходится ежедневно отправлять десятки и сотни посылок? Заполнение бланков отнимает большое количество времени, часто случаются ошибки, которые ведут к финансовым потерям, а на их исправление требуется много сил.

        Иногда выручают простые решения:

·         Напечатать бланки Почты России и адресные ярлыки в типографии  с заполненным обратным адресом и реквизитами для зачисления почтового перевода. К стати, эту услуги мы оказываем нескольким нашим клиентам.

·         Сделать «маску» в Word или Excel  для заполнения и печати данных на бланках Почты России. И печатать бланки обычным принтером.

·         Изготовить набор штампов с оттисками обратного адреса и реквизитов для оплаты.  И ставить оттиски там где требуется заполнять много одинаковой информации. Такое же решение удобно для тех, кто получает много корреспонденции и приходится заполнять бланки с паспортными данными и прочими реквизитами.

       Есть комплексные решения для более крупных отправителей корреспонденции. Это использование специальных программ для заполнения бланков. Мы сами используем приложение для «1С» при печати почтовых бланков. Все кто получал от нас посылки видели,  что почтовые бланки мы печатаем сами. Это наиболее удобное решение, но и требует затрат на внедрение.

Несколько месяцев назад у нас была идея создать в интернете сервис для печати почтовых бланков для небольших интернет магазинов, но реализовывать мы его не стали. Но так как хорошие идеи обычно приходят в головы многим, эта идея была реализована.

Вы можете посмотреть решение для печати почтовых бланков на сайте: http://pbrf.ru

Решение еще не совершенно и находится в доработке, но можно уже пользоваться.

Это универсальный инструмент для небольших отправителей корреспонденции. Основной его недостаток в том, что ресурс платный, такова стратегия собственников.

Пример
39.
При
оплате за обучение студент вносит деньги
в кассу, где бухгалтер заполняет от руки
квиток об оплате. Автоматизировать
ручную работу бухгалтера, создав форму,
заполняющую карточку оплаты, которую
можно при необходимости отправить на
печать.

Технология
выполнения

Интерфейс
шаблона и приложения

В
качестве интерфейса сначала рассмотрим
самую простую форму приложения,
отвечающего условиям задачи и включающего
в себя соответствующие текстовые поля
ввода и рабочие кнопки (рис. 85).

Рис.
85.
Форма
примера 39 в рабочем состоянии

Далее
рассмотрим, как автоматизировать печать
квитанции об оплате за обучение.

Начнем
с разработки бланка стандартного
документа (печатной формы). Эту форму
можно сделать на базе шаблона с текстовыми
полями, в которые будут заноситься
изменяющиеся сведения. Для этого
выполните следующие команды: Файл
+
Создать.
В
правой части окна нового документа
выберите раздел Шаблоны
и
гиперссылку На
моем компьютере
(рис.
86). После чего появится диалоговое окно
Шаблоны
(рис.
87), в котором на вкладке Общие
необходимо
выделить пиктограмму Новый
документ
и
поставить переключатель Шаблон
в
рамке Создать.

Включите
панель Формы
(Вид
+ Панели инструментов + Формы). Для
дальнейшей работы понадобится только
один элемент этой панели – Текстовое
поле

которое
позволяет создать на форме изменяющееся
поле (либо посредством кода, либо самим
пользователем). Выбирая курсором место
в документе Word для расположения
соответствующего поля и расположив на
нем элемент Поле,
можно получить необходимую форму. Для
того чтобы расширить поле, надо поставить
в него курсор и несколько раз нажать
Tab.
Для того чтобы подчеркнуть поле, выделите
его как текст и примените к нему
подчеркивание.

Рис.
87.
Диалоговое
окно Шаблоны

Создайте
шаблон документа, придерживаясь рис.
88.

Рис.
88.
Шаблон
документа word, в который вносятся данные
для печати

В
некоторых полях (поля выделены серым
фоном) можно ввести значения по умолчанию.
Значение по умолчанию устанавливается
при помощи диалогового окна Свойства,
которое можно вывести на экран следующим
образом:

• щелкнуть
правой клавишей мыши по необходимому
текстовому полю;

• в
появляющемся контекстном меню выбрать
Свойства;

• указать
значение по умолчанию (рис. 89).

Значения
по умолчанию позволяют менять только
те данные, которые должны изменяться
нечасто. Например, оплата за обучение
в основном одна и та же – 1500 руб.,
поэтому значение этого поля будет
меняться не очень часто.

Рис.
89.
Установка
параметров текстового поля «сумма_опл»

Рассмотрим
и другие необходимые элементы рабочего
окна «Параметры текстового поля». В
поле Тип
указывается
тип значения, которое можно помещать в
поле. Можно заполнить поле Максимальная
длина
,
хотя наиболее важным для дальнейшего
использования кодом VBA является поле
Закладка.
Значение этого поля будет служить
меткой, в которую должен устанавливаться
курсор, перед помещением в документ
очередной порции информации. Поэтому,
как только все необходимые поля
определены, нужно указать для каждого
из них осмысленные метки. Для бланка
документа Word, приведенного на рис. 86,
зададим (последовательно) такие метки:

Фамилия
– фамилия студента;

Имя
– имя студента;

Отчество
– отчество студента;

Группа
– наименование группы;

Месяц_опл
– название месяца, за который вносится
оплата;

Сумма_опл
– внесенная сумма;

ФИО_бух
– фамилия принявшего бухгалтера;

Дата_опл
– дата оплаты.

После
окончания разработки формы документа
сохраним его под именем Оплата
за учебу
в
каталоге Шаблоны.
На рис. 88 представлен шаблон созданного
документа с изменяющимися полями.

Создание
модуля Печать для шаблона документа

Далее
необходимо перейти в редактор VBA и
создать форму приложения, отвечающего
условиям задачи (рис. 85).

В
листинге представлен код процедуры
печати бланка квитанции об оплате,
сопутствующие и отладочные процедуры.

Листинг
(занести
в Модуль1
проекта
Оплата
за учебу
)

OptioNExplicit

OptioNBase
1


переменные формы приложения

Public
фам1
As String

Public
имя1
As String

Public
отчество1
As String

Public
групп1
As String

Public
месяц
As String

Public
сумма
As String

Public
бух
As String

Public
дата
As String


переменные формы шаблона документа

Public
фамилия
As
String

Public
имя
As String

Public
отчество
As String

Public
группа
As String

Public
месяц_опл
As String

Public
сумма_опл
As String

Public
фио_бух
As String

Public
дата_опл
As String

Dim
book(8) As String

Dim
dataMas(8) As String

Dim
i As Integer

Sub
Печать() ‘процедура печати бланка

‘Заносим
информацию в массивы bookmarmas, datamas

book(1)
= «фамилия»: dataMas(1) = фамилия

book(2)
= «имя»: dataMas(2) = имя

book(3)
= «отчество»: dataMas(3) = отчество

book(4)
= «группа»: dataMas(4) = группа

book(5)
= «месяц_опл»: dataMas(5) = месяц_опл

book(6)
= «сумма_опл»: dataMas(6) = сумма_опл

book(7)
= «фио_бух»: dataMas(7) = фио_бух

book(8)
= «дата_опл»: dataMas(8) = дата

‘заполнение
полей квитанции:

For
i = 1 To 8

ActiveDocument.FormFields(ActiveDocument.Bookmarks(book(i)).Name).Result
= dataMas(i)

Next

ActiveDocument.PrintPreview
Выполняется предварительный просмотр
печати.

‘Для
того чтобы реально распечатать документ,
применяется метод PrintOut объекта
ApplicatioN(см. Help)

UserForm1.Hide

End
Sub

В
связи с различием переменных, принимаемых
и передаваемых на печать, объявим как
Public переменные двух видов: получаемые
интерфейсной частью приложения и
печатаемые в форме шаблона.

Обратите
внимание на то, что здесь все данные
имеют тип String. Такие однотипные данные
позволяют записывать их в поля формы в
цикле, содержащем всего два оператора
(см. описание листинга).

Создание
модулей работы кнопок формы приложения

Работа
кнопки Выдать
справку
состоит
в считывании введенной информации в
текстовые поля формы приложения, передаче
их значений переменным формы шаблона
документа с дальнейшим выводом информации
в шаблон документа.

OptioNExplicit

Private
Sub CommandButton1_Click()

фамилия
= фам1

имя
= имя1

отчество
= отчество1

группа
= групп1

месяц_опл
= месяц

сумма_опл
= сумма

фио_бух
= бух

дата_опл
= дата

Call
Печать

End
Sub

Процедуры
присваивания переменным формы приложения
введенных значений в текстовые поля
формы.

Private
Sub textBox1_change()

фам1
= TextBox1.Value

End
Sub

Private
Sub textBox2_change()

имя1
= TextBox2.Value

End
Sub

Private
Sub textBox3_change()

отчество1
= TextBox3.Value

End
Sub

Private
Sub textBox4_change()

групп1
= TextBox4.Value

End
Sub

Private
Sub textBox5_change()

месяц
= TextBox5.Value

End
Sub

Private
Sub textBox6_change()

сумма
= TextBox6.Value

End
Sub

Private
Sub textBox7_change()

бух
= TextBox7.Value

End
Sub

Private
Sub textBox8_change()

дата
= TextBox8.Value

End
Sub

Откомпилируйте
программу и запустите на проверку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщений [ 7 ]

1 Тема от ma.risha 02.10.2013 09:39:34

  • ma.risha
  • рядовой
  • Неактивен
  • Зарегистрирован: 02.10.2013
  • Сообщений: 4

Тема: Автоматическое заполнение бланков документов.

Добрый день! Помогите пожалуйста разобраться с автоматическим заполнением бланков, мне надо в ворде заполнить ОЧЕНЬ МНОГО товаротранспортных накладных. В приложенном файле я выделила цветным те поля, которые я бы хотела чтобы изменялись автоматически, после внесения изменений в первое поле.

2 Ответ от andrkar 02.10.2013 13:17:52

  • andrkar
  • Модератор
  • Неактивен
  • Откуда: Томск
  • Зарегистрирован: 10.03.2010
  • Сообщений: 431
  • Поблагодарили: 26

Re: Автоматическое заполнение бланков документов.

где файл?

3 Ответ от shanemac51 03.10.2013 16:06:56

  • shanemac51
  • генерал-полковник
  • Неактивен
  • Зарегистрирован: 05.03.2012
  • Сообщений: 467
  • Поблагодарили: 119

Re: Автоматическое заполнение бланков документов.

если я правильно усмотрела
—дата
—фамилия
—объем м3

————
а все остальное —прямая набивка в ворде или пустое

4 Ответ от ma.risha 03.10.2013 16:11:50

  • ma.risha
  • рядовой
  • Неактивен
  • Зарегистрирован: 02.10.2013
  • Сообщений: 4

Re: Автоматическое заполнение бланков документов.

Пару полей еще надо заполнить.

5 Ответ от ma.risha 04.10.2013 08:25:50

  • ma.risha
  • рядовой
  • Неактивен
  • Зарегистрирован: 02.10.2013
  • Сообщений: 4

Re: Автоматическое заполнение бланков документов.

ma.risha пишет:

Добрый день! Помогите пожалуйста разобраться с автоматическим заполнением бланков, мне надо в ворде заполнить ОЧЕНЬ МНОГО товаротранспортных накладных. В приложенном файле я выделила цветным те поля, которые я бы хотела чтобы изменялись автоматически, после внесения изменений в первое поле.

Post’s attachments

Бланк для форума.doc 89.5 Кб, 24 скачиваний с 2013-10-04 

You don’t have the permssions to download the attachments of this post.

6 Ответ от msotools 06.03.2021 14:32:58

  • msotools
  • рядовой
  • Неактивен
  • Зарегистрирован: 06.05.2017
  • Сообщений: 2

Re: Автоматическое заполнение бланков документов.

Можно использовать бесплатный сервис docwebservice.ru
Это мощный инструмент для автозаполнения любых документов и не только Word

Сообщений [ 7 ]

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Автоматическое заполнение бланков документов.

Те, кто знаком с редактором текста Microsoft Word, знают, что работу в нем можно существенно ускорить, если правильно настроить программу. Наш сайт о Microsoft Office Word даст ответ про: кнорпка макроса.
Настройки зависят от тех задач, которые вы выполняете. Кому-то абсолютно не нужны стили оформления, кто-то, напротив, считает их основной изюминкой Ворда. На портале о Microsoft Office Word вы узнаете про: как из excel вставить в word.
Правильно и оптимально подобрать настройки именно для своего индивидуального пользования целая наука. Наш сайт о Microsoft Office Word даст ответ про: синоним слова поиск.

На форуме сайта Ворд Эксперт обсуждаются различные варианты работы с приложением, участники делятся друг с другом своими секретами и тонкостями. Наш сайт о Microsoft Office Word даст ответ про: как сделать чтобы каждая новая строка была с отступом.
Здесь можно найти готовые шаблоны для различных задач, макросы для построения таблиц, форматирования заголовков и разделов и многое другое. На портале о Microsoft Office Word вы узнаете про: как убрать в ворде лишний лист.

Кроме готовых решений и ответов на вопросы форум дает прекрасную возможность самому научиться оптимизировать и автоматизировать свою работу. На портале о Microsoft Office Word вы узнаете про: word 2007 при каждом втором запуске сообщает через панель восстановление документа.
Вы найдете все о создании макросов, шаблонов, работе с горячими кнопками, а также дополнительную литературу по Ворду и программированию. Наш сайт о Microsoft Office Word даст ответ про: заполнения документов word данными из таблицы excel.

Также предусмотрена возможность оставить свое задание, для выполнения его участниками форума.


Adblock
detector