Word 2007. Как отключить автозавершение?
Здравствуйте.
Вопрос, собственно в названии. Как в Ворде 2007 отключить автозавершение. Т.е. чтобы при вводе слова не выскакивало предложение нажать ВВОД.
В более новых версиях есть пункт в настройках "Использовать автозавершение". В Ворде 2007 что-то не вижу.
Заранее спасибо.
Гугл таблицы. Не разделяет экземпляры при печати. Никак!
Прошу помощи у знатоков гугл таблиц и наверное принтеров. Имею файл протокола совещания. С какого-то момента при печати нескольких экземпляров он перестал разбиваться на экземпляры - тоесть печатает шесть первых листов, шесть вторых и так далее.
Что я уже не пробовал - печатал из таблиц, сохранял как пдф, менял принтер, копировал всю таблицу в новый файл - всё равно печатает так, независимо от галки "разбить на экземпляры".
Куда копать?
Ссылка на папку в гугл таблицах
Братцы, подскажите в как в гугл таблицах реализовать ссылку на папку с компьютера, в excel знаю как а в гугл табдицах не могу, или на файл с компьютера.
Приводим данные в порядок с помощью Microsoft Access (часть8)
Microsoft Access предоставляет множество визуальных средств разработки приложения по работе с базой данных. Но рано или поздно возникает необходимость в более тонкой настройке отдельных ее частей и добавление нового функционала, который невозможно реализовать с помощью мастеров и конструкторов. Для этого Microsoft Access да и все программы из пакета MS Office могут расширять свой функционал с помощью встроенного языка программирования VBA (Visual Basic for Applications). Изучив основы языка VBA на одном из продуктов MS Office, в нашем случае это Access, его можно применять в других программах (Excel, Word, Power Point). Задачи автоматизации рутинных процессов не меняются долгое время. Не вдаваясь в новомодные течения, круг задач которые решает VBA будет востребован еще долго. Преимущества VBA в том, что он консервативен, но по прежнему востребован и не подвержен безумным обновлениям, что позволяет неискушенному пользователю спокойно и стабильно работать.
Создадим форму, которая всегда будет открываться при запуске нашей базы. Так называемое главное окно. На вкладке Создание нажмем Пустая форма.
Назовем ее main.
Далее Файл -> Параметры -> Текущая база данных, опция Форма просмотра, в выпадающем списке выберем форму main. Форма будет открываться при запуске приложения и с помощью нее можно организовать навигацию и доступ к другим объектам базы данных.
На вкладке Работа с базами данных нажмем на кнопку Visual Basic. Откроется окно редактора VBA. В редакторе мы будем писать код, который сможет обращаться ко всем нашим объектам (таблицы, формы, запросы, отчеты и т. п.) и принадлежащим им элементам, менять их свойства и поведение.
Минимальной структурной единицей программы на VBA является процедура (ее еще называют макросом). Процедура начинается со служебного слова Sub, далее следует имя процедуры (как правило отражает назначение процедуры), круглые скобки, заканчивается процедура служебной конструкцией End Sub. Внутри процедуры пишется код на языке VBA.
Sub MyFirstProcedure()
<Код на языке VBA>
End Sub
На панели инструментов нажмем Insert - > Module. Модуль это еще один объект нашей базы. В нем мы будем размещать наши процедуры, а затем вызывать их на исполнение. В окне кода модуля Module1 напишем следующее:
Sub MyFirstProcedure()
Debug.Print “Hello, world!”
End Sub
Убедимся что у нас открыто окно Immediate (View -> Immediate Window), оно необходимо для того, чтобы иметь возможность увидеть результаты выполнения программы в процессе ее отладки. На панели инструментов нажмем зленый треугольник (Run Sub), в окне Immediate увидим результат выполнения процедуры.
Теперь выведем наше приветствие на форму main. В режиме конструктора добавим текстовое поле и в окне свойств поля дадим ему имя txtHello.
С помощью VBA обратимся к этому полю из процедуры и поместим в него текст - Hello, world! Процедура будет иметь следующий вид:
Sub MyFirstProcedure()
Form_main.txtHello.Value = "Hello, world!"
End Sub
Запустим ее на исполнение и убедимся, что текстовое поле txtHello формы main получило значение - "Hello, world!"
Приводим данные в порядок с помощью Microsoft Access (часть7)
Продолжим знакомство с SQL. Рассмотрим запросы на вставку, обновление и удаление данных.
Запрос на вставку данных начинается с оператора INSERT INTO, далее следует имя таблицы и в скобках перечисление полей таблицы в которые мы хотим добавить данные, затем оператор VALUES и в скобках значения полей через запятую. Важно правильно соотнести перечисление полей и значений, иначе из-за несовпадения типов вставка не произойдет или произойдет со вставкой данных не в те поля. Заметим, что текстовые значения полей мы заключаем в двойные кавычки, а вот значение поля [companyid] нет, так как значение данного поля числовое.
Запрос на вставку данных будет иметь вид:
INSERT INTO contacts (name, surname, email, companyid)
VALUES ("Мария", "Пыхтина", "mariya85@ya.ru", 1);
Выполним запрос, нажав на красный восклицательный знак, Access предупреждает нас об изменениях, которые произойдут после выполнения запроса.
Убедимся, что данные добавлены корректно.
Запрос на обновление предназначен для изменения данных полей. Начинается запрос с оператора UPDATE, затем следует имя таблицы, оператор SET и перечисление полей с их новыми значениями.
Важно помнить, что результаты обновления невозможно отменить. Правильность выполнения запроса можно проверить запросом на выборку, удовлетворяющего параметрам заданным в запросе на обновление. Сразу добавим секцию WHERE иначе обновление коснется всего поля.
Запрос на обновление данных будет иметь вид:
UPDATE contacts SET email="mariya85@rambler.ru" WHERE id =21;
Выполним запрос.
Убедимся, что данные обновились.
Запрос на удаление начинается с оператора DELETE, затем следует символ (*) - что означает удаление записи полностью, если же нам надо удалить значение нескольких полей мы пользуемся запросом на обновление, затем оператор FROM с указанием имени таблицы, сразу же добавим секцию WHERE иначе будут удалены все записи таблицы.
Удаленные записи нельзя будет восстановить. Поэтому делать это нужно крайне аккуратно. И не забывать о том, что у нас есть связанные данные в других таблицах, которые тоже придется удалять. Чаще всего данные отмечаются каким-либо признаком и просто исключаются из выборки. Для этого у нас может послужить поле [active]. Так же при удалении записи, значение поля [id] с типом данных счетчик исключается из счетчика.
Запрос на удаление данных будет иметь вид:
DELETE * FROM contacts WHERE id =21;
Выполним запрос.
Убедимся, что указанная запись удалена.
Приводим данные в порядок с помощью Microsoft Access (часть6)
Основу работы с реляционными базами данных составляет язык структурированных запросов SQL (Structured Query Language). Это набор инструкций по манипулированию объектами базы данных, с помощью них мы можем создавать таблицы, добавлять в них данные, производить выборку данных, удалять данные и удалять таблицы. Для всего этого мы пользовались соответствующими мастерами, но под капотом Access формулировал эти задачи на языке SQL и даже генерировал для нас готовый SQL код. Основные команды языка применимы к большинству реляционных баз данных (MS SQL Server, Oracle, MySQL, PostgreSQL, SQLite и т. п.), это устоявшийся стандарт в мире реляционных баз. Различные СУБД расширяют возможности SQL собственным функционалом, но основной синтаксисе с незначительными особенностями применим ко всем.
Откроем наш запрос contacts в режиме SQL. В окне построителя запросов мы наблюдаем код на языке SQL, код сгенерировал Access, но мы бы могли написать его сами и он бы заработал. Разберемся в структуре SQL запросов на более простом примере.
Самыми распространенными запросами являются:
запрос на выборку;
запрос на вставку;
запрос на удаление.
Самый простой запрос на выборку начинается с оператора SELECT, затем следует перечисление необходимых полей, затем оператор FROM после чего указывается имя таблицы (таблиц) которым принадлежат эти поля, например:
SELECT name, surname, email FROM contacts;
В результате мы получим все записи таблицы contacts, представленные тремя полями. Если же мы хотим вывести все поля мы можем написать SELECT * FROM contacts; В конце инструкции ставится точка с запятой.
Через вкладку Создание откроем уже не Мастер запросов, а Конструктор запросов. Не будем выбирать таблицу предложенную диалоговым окном и перейдем в SQL режим. Напишем здесь уже известную нам конструкцию SELECT name, surname, email FROM contacts; и отправим ее на исполнение нажав на кнопку с красным восклицательным знаком.
Убедимся в правильности вывода, действительно программа вывела все записи представленные тремя полями
Заменим перечисление полей в секции SELECT на символ * (звездочка):
SELECT * FROM contacts; и выполним запрос.
Результатом запроса будут все записи и все поля таблицы contacts.
Предположим нас интересуют только активные контакты. Реализуем это в SQL запросе, для этого существует оператор WHERE, это оператор условия. Запрос будет выглядеть следующим образом:
SELECT * FROM contacts WHERE active=true;
Иными словами показать все записи таблицы contacts где поле [active] имеет значение ИСТИНЫ, в SQL коде мы уже строго придерживаемся английского значения слова ИСТИНА – true и ЛОЖЬ – false.
Мы можем задавать несколько значений в секции WHERE. …WHERE условие1 AND условие2 AND условие3, перечисляя их через логические операторы AND. Например:
SELECT * FROM contacts WHERE active=true AND [regdate]= #27/10/2022#;
Запрос покажет все записи из таблицы contacts со значением поля [active] равным ИСТИНА и датой регистрации [regdate] равной 27.10.2022, заметим что дату мы обернули в символ решетки и разделили день, месяц, год через слеш, это необходимо при работе с датами в запросах.
В нашем запросе contacts, помимо таблицы contacts, есть еще таблица phones. В запросах мы можем указывать больше одной таблицы, но необходимо указывать по каким полям будет объединяться результат, для этого существует оператор INNER JOIN. Вообще тема объединения таблиц довольна обширна, мы же рассмотрим самый распространенный вид объединения - внутренне. Наш запрос усложняется наличием двух таблиц, имена полей теперь необходимо указывать в формате – имя_таблица.имя_поля, так как в разных таблицах могут находится поля с одинаковыми именами и как мы помним у нас в обоих таблицах есть поле [id]. Запрос на объединение таблицы contacts и phones c возможностью выбора полей из обоих таблиц будет выглядеть следующим образом:
SELECT contacts.name, contacts.surname, contacts.email, phones.phone
FROMcontacts INNERJOIN phones ON contacts.id = phones.userid;
Иными словами код говорит – выбрать поля [name], [surname], [email], [phone] из объединенных таблиц contacts и phones, где каждой записи таблицы contacts соответствует запись из таблицы phones, в которых поля [id] и [userid] совпадают.
Выполним запрос нажав на красный восклицательный знак.
Наглядно убедимся в правильности выполнения запроса, контакты имеющие более одного телефонного номера выводятся для каждого номера.
Дополним наш запрос секцией WHERE, для выбора только активных контактов, при этом само поле [active] выводить не обязательно.
SELECT contacts.name, contacts.surname, contacts.email, phones.phone
FROM contacts INNER JOIN phones ON contacts.id = phones.userid
WHERE active=true;