Elettracompany.com

Компьютерный справочник
6 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Командная строка excel

Командная строка excel

Вот жеж, Михалыч. А что автозапуск уже не спасает отца русской демократии?
Например вот тут пишется: office.microsoft.com что если макрос сохранить под именем «Auto_Open», он выполняется автоматически при открытии книги. Также там и про процедуру Workbook_Open тоже полезную мне кажется для данной ситуации.
Кроме того макрос может быть использован и для всех(!) открытых книг (что естественно должно наводить на некоторые мысли). Ну и вот еще полезное о ключах, может пригодиться: office.microsoft.com также оно же подробнее: support.microsoft.com

А кстати, вот еще чисто случайно ткнул просто — и вот оно практически твоёже(!): usenet.su

Simple777
Автор

Исправлено: Simple777, 30.05.14 14:08

Simple777
Автор

Я тут с полгодика поразмышлял.

Карочи. Встроил в personal.xls проверку — открыт ли мне нужный файл или нет?

Вроде бы все работает, когда в командной строке при вызове Excel указывается явно start excel

А вот если загрузить excel щелчком по имени файла (или при помощи FAR), то получается, что во время отработки макроса в personal.xls (макрос выполняется автоматически при открытии любой существующей или новой книги) строка nfile = ActiveWorkbook.FullName вызывает ошибку. Ну, типа, нет ни одной открытой книги.
А на самом-то деле есть. Вот если в макросе поставить команду stop, а после продолжить выполнение макроса, то эта строка nfile = ActiveWorkbook.FullName
работает без ошибок. Я пробовал предварительно объявить тип переменной nfile , но это не помогло.
Видимо, все дело в том, что макрос выполняется быстрее, чем грузится книга, и поэтому получается ошибка. Непонятно, как с этим бороться.

В общем, целый день искал по инету ответ, но так и не нашел.

Вообще хочу сказать, что запустить макрос на исполнение при любом способе загрузки Excel — дело не такое простое, как об этом везде пишут.

Я нашел только один-единственный работающий способ — запуск макроса через событие Workbook_Open() При обработке этого события выполняется указанный конкретный макрос из personal.xls
Все другие способы у меня не получилось реализовать.

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

Может быть, надо поставить какую-то задержку при выполнении макроса? Но это какое-то сомнительное решение проблемы.

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

Исправлено: Simple777, 21.12.14 23:46

Командная строка — вопросы и ответы.

Как запустить командную строку при помощи клавиатуры? Или, как вызвать командную строку?

Запускается нажатием клавиш Win+R

Как запустить Диспетчер задач из командной строки?

Нажать сочетание клавиш Win+R и набрать в появившейся командной строке — taskmgr Потом нажать Enter.

Как вызвать paint через run:

Если вы уже вызвали командную строку нажатием Win+R осталось ввести: mspaint и нажать Enter.

Часто, это удобно после того как вы сделали фото рабочего стола, при помощи PrintScreen.

Как свернуть командную строку?

Свернуть — это, пожалуй, врядли. а вот закрыть можно, прижав слегка клавишу Esc .

Как вызвать Excel из командной строки?

Не поверите! Набрать в строке excel потом нажать Enter

Как в командной строке вызвать блокнот?

Командная строка вызвана! Теперь набираем notepad и жмем Enter. Как и во всех других случаях, тем, кто часто использует этот самый простой текстовый редактор, пригодится!

Горячие клавиши Excel — вопросы пользователей

Как вставить текущую дату в ячейку?

Текущая дата в Excel вводится нажатием Ctrl+; точка с запятой находится на клавише с Русской буквой ж.

Kак вставить текущее время в ячейку Excel?

Текущее время вводится в ячейку нажатием Ctrl+Shift+; , от ввода текущей даты отличается добавлением в сочетание клавиши Shift.

Kак переместить курсор из ячейки в строку формул без мыши?

Если курсор появился в ячейке, то остается придавить Ctrl+А и курсор переместится в строку формул.

Как вариант: выделение ячейки (активизация), переход в режим правки ее содержимого нажатием Shift+F2 (как раз в этой ситуации и появляется курсор в ячейке), потом Ctrl+А.

Если пропустить нажатие Shift+F2, то сочетание Ctrl+А просто выделит ячейки всего листа!

Как с помощью клавиатуры активировать ячейку для правки текста?

Выделить нужную ячейку и нажать клавишу F2 (находится в самом верхнем ряду — функциональные клавиши).

Испытайте Себя на Знание Горячих Клавиш.

Пытаясь, F3 способ оптимизировать работу за компьютером я постоянно ходил по F6! В комнате, где я находился, сквозило. Shift+F1 — подумал я и поняв причину решительно подошел, чтоб Ctrl+W и сделал это. но потом подумал — черт с ней с простудой, ведь так легче думается. Ctrl+Z — было моим решением, и мало того, еще и F11.

Читать еще:  Поле имени в excel

Мысленно пальцы перебирали клавиши клавиатуры. Однако не хотелось Ctrl+C чьи-то творения и словно PrintScreen, Ctrl+V в эту короткую статью на тему горячие клавиши. Хотелось Ctrl+S в вашей памяти все действия ускоряющие работу за компьютером, словно поставить Ctrl+P. но F12?

В голову приходили разные мысли. одни хотелось Ctrl+S, другие Ctrl+H. Потом, вдруг хотелось взять Ctrl+A и Shift+Delete к чертовой матери!

В конце концов, было решено прекратить F3 и оставить все как есть, ну разве что сделать F7.

Такая вот ненавязчивая F1. Надеюсь, было нетрудно догадаться о смысле?

F3 — Найти, поиск

F6 — Циклическое перемещение

Shift+F1 — что это такое? (курсор)

Ctrl+W — закрыть окно

F11 — распахнуть окно

Ctrl+P — печать (print 🙂

F12 — сохранить как?

Ctrl+H — найти и заменить

Ctrl+A — выделить все

Shift+Delete — удалить без помещения в корзину

Командная строка excel

Вот жеж, Михалыч. А что автозапуск уже не спасает отца русской демократии?
Например вот тут пишется: office.microsoft.com что если макрос сохранить под именем «Auto_Open», он выполняется автоматически при открытии книги. Также там и про процедуру Workbook_Open тоже полезную мне кажется для данной ситуации.
Кроме того макрос может быть использован и для всех(!) открытых книг (что естественно должно наводить на некоторые мысли). Ну и вот еще полезное о ключах, может пригодиться: office.microsoft.com также оно же подробнее: support.microsoft.com

А кстати, вот еще чисто случайно ткнул просто — и вот оно практически твоёже(!): usenet.su

Simple777
Автор

Исправлено: Simple777, 30.05.14 14:08

Simple777
Автор

Я тут с полгодика поразмышлял.

Карочи. Встроил в personal.xls проверку — открыт ли мне нужный файл или нет?

Вроде бы все работает, когда в командной строке при вызове Excel указывается явно start excel

А вот если загрузить excel щелчком по имени файла (или при помощи FAR), то получается, что во время отработки макроса в personal.xls (макрос выполняется автоматически при открытии любой существующей или новой книги) строка nfile = ActiveWorkbook.FullName вызывает ошибку. Ну, типа, нет ни одной открытой книги.
А на самом-то деле есть. Вот если в макросе поставить команду stop, а после продолжить выполнение макроса, то эта строка nfile = ActiveWorkbook.FullName
работает без ошибок. Я пробовал предварительно объявить тип переменной nfile , но это не помогло.
Видимо, все дело в том, что макрос выполняется быстрее, чем грузится книга, и поэтому получается ошибка. Непонятно, как с этим бороться.

В общем, целый день искал по инету ответ, но так и не нашел.

Вообще хочу сказать, что запустить макрос на исполнение при любом способе загрузки Excel — дело не такое простое, как об этом везде пишут.

Я нашел только один-единственный работающий способ — запуск макроса через событие Workbook_Open() При обработке этого события выполняется указанный конкретный макрос из personal.xls
Все другие способы у меня не получилось реализовать.

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

Может быть, надо поставить какую-то задержку при выполнении макроса? Но это какое-то сомнительное решение проблемы.

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

Исправлено: Simple777, 21.12.14 23:46

Как запустить Excel macros из командной строки или пакетного файла?

У меня есть макрос Excel VBA, который мне нужно запускать при доступе к файлу из пакетного файла, но не каждый раз, когда я его открываю (следовательно, не используя событие open file). Есть ли способ запустить макрос из командной строки или пакетного файла? Я не знаком с такой командой.

Предположим, что среда Windows NT.

10 Ответов

Вы можете запустить Excel, открыть книгу и запустить макрос из файла VBScript.

Скопируйте приведенный ниже код в блокнот.

Обновление ‘ MyWorkbook.xls » и » MyMacro ‘ параметров.

Сохраните его с расширением vbs и запустите его.

Ключевой линией, которая запускает макрос, является:

xlApp.Run «MyMacro»

Самый простой способ сделать это-это:

1) Запустите Excel из вашего пакетного файла, чтобы открыть книгу, содержащую ваш макрос:

2) вызовите макрос из события Workbook_Open книги, например:

Теперь этот элемент управления будет возвращен в ваш пакетный файл для выполнения другой обработки.

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

Читать еще:  Find and replace excel

Поместите этот код в пакетный файл (используйте свои пути к EXCEL.EXE и к книге):

Поместите этот код в объект Excel VBA ThisWorkBook:

И поместите свой код в модуль Excel VBA, как показано ниже:

Запустите пакетный файл и получите результат:

Для случая, когда вы не собираетесь запускать какой-либо макрос, просто поместите пустое значение Set MacroName= в пакет.

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

Я всегда проверял количество открытых книг в Workbook_Open(). Если он равен 1, то книга была открыта с помощью командной строки (или пользователь закрыл все книги, а затем открыл эту).

Если вам удобнее работать внутри Excel/VBA,, используйте событие open и протестируйте среду: либо у вас есть файл сигнала, запись реестра или переменная среды, которая управляет тем, что делает событие open.

Вы можете создать файл/установки снаружи и внутри теста (используйте GetEnviromentVariable по env-VAR), и легко проверить. Я написал VBScript, но сходство с VBA вызывает у меня больше страха, чем легкости..

Насколько я понимаю проблему, вы хотите использовать электронную таблицу обычно большую часть/часть времени, но все же запустить ее в пакетном режиме и сделать что-то extra/different. вы можете открыть лист из командной строки excel.exe, но вы не можете контролировать, что он делает, если он не знает, где он находится. Использование переменной среды относительно просто и упрощает тестирование электронной таблицы.

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

В рабочей книге открыто событие (как и другие):

Добавьте активный код, если это применимо. В пакетном файле используйте

Вместо прямого сравнения строк (VB не найдет их равными, так как GetEnvironmentVariable возвращает строку длиной 255) напишите это:

@ Robert: я попытался адаптировать ваш код с относительным путем и создал пакетный файл для запуска VBS.

VBS запускается и закрывается, но не запускает макрос. Есть идеи, где может быть проблема?

Я удалил «Application.Quit», потому что мой макрос вызывает форму пользователя, которая заботится о нем.

EDIT

Я действительно разработал его, просто на случай, если кто-то захочет запустить userform «alike» автономное приложение:

Проблемы, с которыми я столкнулся:

1 — я не хотел использовать событие Workbook_Open, так как excel заблокирован только для чтения. 2-пакетная команда ограничена тем, что она (насколько мне известно) не может вызвать макрос.

Сначала я написал макрос для запуска моей пользовательской формы, скрывая приложение:

Затем я создал vbs для запуска этого макроса (сделать это с относительным путем было сложно):

И я, наконец, сделал пакетный файл для выполнения VBS.

Обратите внимание, что я также включил «Set back to visible» в свой Userform_QueryClose :

В любом случае, спасибо за вашу помощь, и я надеюсь, что это поможет, если кто-то нуждается в ней

Вы можете проверить, открыт ли уже Excel. Нет необходимости создавать еще один isntance

Я неравнодушен к C#. я выполнил следующее С помощью linqpad. Но его можно было так же легко скомпилировать с помощью csc и запустить через вызов из командной строки.

Не забудьте добавить excel пакетов в пространство имен.

Похожие вопросы:

Как конвертировать .bas файл в vbscript/exe или запустить из командной строки ? Я сделал скрипт в Excel на MS Visual Basic для приложений, но я могу запустить этот скрипт только под Excel. Как я.

Можно ли запустить макрос Excel из командной строки? Я не хочу использовать событие Worksheet_Open и просто открыть файл Excel. Мне нужно запустить конкретный макрос, который существует в Excel.

Как запустить Excel macros из пространства имен VS2010(C#)?I use Microsoft.Office.Interop.Excel

Я хотел бы извлечь определенные строки из файла журнала с помощью собственных инструментов командной строки Windows или пакетного файла (.летучая мышь). Вот пример файла журнала: 2009-12-07.

Я использую пакетный файл для запуска Outlook и Excel 2007 следующим образом: start C:Program FilesMicrosoft OfficeOffice12OUTLOOK.EXE start C:Program FilesMicrosoft.

Я хотел бы знать, сохранен ли файл excel с кодом macro/vba в любом формате (.xls, .xlsx ..etc), все еще macros может работать? Или есть способ запустить macros независимо от формата расширения.

Я хочу создать файл exe, используя C#, который будет отправлять электронные письма. Я хочу вызвать этот exe с помощью пакетного файла. Следует ли мне создать приложение веб-формы или просто.

@echo off @setlocal enableextensions @cd /d C:Program FilesMicrosoft Visual Studio 10.0Common7IDE start %comspec% /k C:Program FilesMicrosoft Visual Studio 10.0VCvcvarsall.bat MSTest.

Читать еще:  Прогнозирование в ms excel

как запустить файл .jsиз пакетного сценария dos или запланировать его запуск? я могу запустить .iim, но можно ли запустить .js файл он не будет запускать пакетный скрипт form dos c:>imacros.exe.

Я пытаюсь открыть UserForm1 макроса excel через пакетный файл. Я могу открыть это, но excel также открывается вместе с этим. Я хочу, чтобы было открыто только UserForm1, а не excel. Ниже приведен.

ITGuides.ru

Вопросы и ответы в сфере it технологий и настройке ПК

Краткий обзор фунцкий и команд Excel и их использование

Функции excel — то, чем приходится пользоваться и с чем работают практически все пользователи офисной программы от компании Microsoft. Excel — это программное обеспечение, которое служит для создания и работы с таблицами различной сложности и функционала. Примечательно, что данная программа распространяется бесплатно, то есть доступна всем пользователям интернета. При этом для ее скачивания и установки не требуется никаких специальных знаний, достаточно нажать кнопку «скачать». А в современных персональных компьютерах основные офисные программы, в том числе и табличный редактор, являются предустановленными.

Что такое функция excel

Мастер функций — удобный инструмент для получения полной информации по аргументам

Функции excel — это заранее определенные формулы, команды, которые предназначены для работы с одним или несколькими значениями и возвращением результата. Это команды, которые представляют собой краткую запись наиболее часто использующихся формул. Например, для расчетов в электронных таблицах excel нередко используют сумму, которую можно выразить через арифметический знак «+», а можно с помощью команды =СУММ(). Это простейшая разновидность данной категории. А некоторые из них выполняют сложнейшие вычисления. Интересно, что для расчета суммы существует автосумма. Значок с обозначением этой команды вынесен в панель инструментов программы. Достаточно нажать на него и «протянуть» курсор по ячейкам, которые должны быть сложены, как пользователь получает необходимое число. Разработчики программного обеспечения специально для удобства вынесли автосумму, потому что данную функцию используют чаще прочих.

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

Прочие функции, команды

Таблица наиболее популярных и часто используемых в работе функций Excel, которые полезно знать наизусть

Чтобы узнать список операций excel, предусмотренных программой, необходимо нажать на значок автосуммы в правом верхнем углу документа — появятся другие доступные команды «Среднее», «Число», «Максимум», «Минимум» и другие. Чтобы воспользоваться какой-либо, необходимо кликнуть по командной строке документа excel (находится под панелью инструментов документа) и выбрать «Вставить». Примечательно, что программа excel реализует возможности введения дополнительных, так называемых пользовательских, функций. Такие команды создаются средствами самого программного обеспечения. Любая такая операция excel представляет собой последовательность действий, то есть имеет собственный синтаксис. Все они имеют одинаковый синтаксис, потому не бойтесь допустить ошибку при ее написании — «умное» программное обеспечение укажет на неточность и поможет устранить ошибку.

Функция excel начинается со знака равенства — обязательное условие. Затем следует ее наименование. Вслед идет аргумент в круглых скобках. Примечательно, что в качестве аргумента функции необязательно должны использоваться числа — еще и буквенные значение, массивы и прочее. Однако есть одно важное условие, которое должно соблюдаться: не использовать пробелы. Согласно синтаксису excel, все составляющие функции записываются в строку, не отделяясь друг от друга. Знаком, завершающим запись, является точка с запятой. Интересно, что не все функции имеют аргументы, например, СЕГОДНЯ — так называется функция, которая возвращает текущую дату, существует без аргумента. Он не нужен для этой команды.

Примечательно, что данное программное обеспечение имеет в среднем 400 встроенных функций, которые необязательно и неудобно всегда вводить вручную. Достаточно использовать специализированную надстройку «Мастер функций», которая вызывается командой «Вставка», затем «Функция».

Особо необходимо отметить, что в программе excel имеется раздел «Финансовые функции», который позволяет работать с финансовыми данными, процентными ставками, ценными бумагами. Данные этого раздела являются специализированными и в большей степени предназначены для бухгалтеров, экономистов, банковских работников.

Люди, по роду деятельности связанные со статистикой, также найдут в программе операции что-нибудь по вкусу. Таким образом, можно проводить работу со статистическими данными в полном объеме.

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

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

Ссылка на основную публикацию
Adblock
detector