Макрос excel в exe

Вы просто копируете нужный файл personal.xlsb на все компьютеры по пути:
в Windows XP:
C:Documents and Settingsимя_пользователяApplication DataMicrosoftExcelXLSTARTPERSONAL.XLSB
в Windows Vista или 7:
C:Usersимя_пользователяAppDataRoamingMicrosof tExcelXLSTARTPERSONAL.XLSB

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

Вдобавок к этому, для Офиса 2007 можно скопировать панель быстрого доступа, с назначенной на макрос кнопкой, и другтие настройки файл Excel.qat :
в Windows XP:
C:Documents and Settingsимя_пользователяLocal SettingsApplication DataMicrosoftOfficeExcel.qat
в Windows Vista или 7:
C:Usersимя_пользователяAppDataLocalMicrosoft OfficeExcel.qat

В Офисе 2010 есть отдельная функция экпорта и импорта пользовательских настроек.

Для надстроек *.xla, *.xlsa
в Windows XP:
C:Documents and Settingsимя_пользователяApplication DataMicrosoftAddIns*.xla

в Windows Vista или 7:
C:Usersимя_пользователяAppDataRoamingMicrosof tAddIns*.xla

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

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

Есть файл Excel (с макросом), возможно ли сделать из него exe-шник, чтобы только после установки работали макросы.  
Пробовал программу Inno Setup, создаёт exe-шник (его паролю), но макросы всё равно работают если даже не установлен дистриб.

 

1) Основные макросы и функции выносите в DLL  
2) Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL  
3) При помощи InnoSetup делаете прогу, которая будет устанавливать в системе эту DLL

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

{quote}{login=EducatedFool}{date=14.09.2010 05:45}{thema=}{post}1) Основные макросы и функции выносите в DLL  
2) Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL  
3) При помощи InnoSetup делаете прогу, которая будет устанавливать в системе эту DLL{/post}{/quote}  
Спасибо, буду пробовать!

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

{quote}{login=Metis}{date=15.09.2010 09:26}{thema=Re: }{post}{quote}{login=EducatedFool}{date=14.09.2010 05:45}{thema=}{post}1) Основные макросы и функции выносите в DLL  
2) Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL  
3) При помощи InnoSetup делаете прогу, которая будет устанавливать в системе эту DLL{/post}{/quote}  
Спасибо, буду пробовать!{/post}{/quote}  
Ответил не подумавший, а могли бы по подробнее :( чайник в этом :(

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

{quote}{login=The_Prist}{date=15.09.2010 10:27}{thema=Re: Re: Re: }{post}{quote}{login=Metis}{date=15.09.2010 09:50}{thema=Re: Re: }{post}Ответил не подумавший, а могли бы по подробнее :( чайник в этом :({/post}{/quote}Поподробней не получится — это слишком долгая история. Наберите в поисковике — COM Addin.  

  Советую заглянуть на ресурс Ч.Пирсона —

www.cpearson.com  

Там есть пример создания таких надстроек.{/post}{/quote}  
А только этот способ? :( Проще ни как нельзя?

 

Alex209

Пользователь

Сообщений: 23
Регистрация: 01.01.1970

Как вариант попробуйте DoneEx XCell Compiler 1.9.11 

http://soft.mydiv.net/win/files-DoneEx-XCell-Compiler.html

<BR>Чесно скажу, сам не пробовал (пока не было необходимости).

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

{quote}{login=Alex209}{date=15.09.2010 11:36}{thema=}{post}Как вариант попробуйте DoneEx XCell Compiler 1.9.11

http://soft.mydiv.net/win/files-DoneEx-XCell-Compiler.html

<BR>Чесно скажу, сам не пробовал (пока не было необходимости).{/post}{/quote}  
Хорошо, сейчас попробую, отпишусь и сообщу как…

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

{quote}{login=Metis}{date=15.09.2010 01:57}{thema=Re: }{post}{quote}{login=Alex209}{date=15.09.2010 11:36}{thema=}{post}Как вариант попробуйте DoneEx XCell Compiler 1.9.11

http://soft.mydiv.net/win/files-DoneEx-XCell-Compiler.html

<BR>Чесно скажу, сам не пробовал (пока не было необходимости).{/post}{/quote}  
Хорошо, сейчас попробую, отпишусь и сообщу как…{/post}{/quote}  
Программа хорошая, скрывает все ссылки с формулами, но мне надо сделать из этого excel файла с макросами exe-шник чтобы exe-шник был запаролен и можно было установить его на любой комп имея пароль (установил exe-шник на комп и в экселевском файле работал макрос и можно было менять формулы, а если не установлен, то просто файл с данными без возможности выполнять макрос «просто как обычный файл экселя»)

 

А можно сделать такое? У нас есть калькулятор который считаем много разного по разным формулам. Он в экселе. и мы хотим что бы он был как программка ну типа как кредитного калькулятора на сайтах банков. Как такое можно сделать? Что бы был особый интерфейс и не требовалось наличия экселя?

 

{quote}{login=The_Prist}{date=15.09.2010 05:24}{thema=}{post}Степан, уже во второй теме Вы задаете вопрос не имеющий отношения к той теме, в которой задаете.    
Где связь между EXE и программой для сайта?{/post}{/quote}  

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

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

нашел что можно это сделать через VB (не VBA), может кто знает и объяснит как это можно сделать?

 

{quote}{login=The_Prist}{date=16.09.2010 03:04}{thema=Re: }{post}{quote}{login=Metis}{date=16.09.2010 03:00}{thema=}{post}нашел что можно это сделать через VB (не VBA), может кто знает и объяснит как это можно сделать?{/post}{/quote}Что именно? По ссылке, что я Вам дал, тоже написано, что через VB. VBA не умеет делать Dll.{/post}{/quote}  
Так там можно сразу exe-шник сделать, если конечно я правильно понял (правда не понял как :( )  
Я вынес все модули и форму в VB а дальше не знаю что делать…  
И что значит «Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL»

 

Metis

Пользователь

Сообщений: 15
Регистрация: 01.01.1970

#13

16.09.2010 15:58:58

{quote}{login=The_Prist}{date=16.09.2010 03:43}{thema=Re: Re: Re: }{post}{quote}{login=}{date=16.09.2010 03:36}{thema=Re: Re: }{post}Так там можно сразу exe-шник сделать, если конечно я правильно понял (правда не понял как :( )  
Я вынес все модули и форму в VB а дальше не знаю что делать…  
И что значит «Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL»{/post}{/quote}А дальше учите VB. Т.к. многие методы различаются, хотя есть и много схожего. Форма, перенесенная из VBA не очень-то приживется — сразу делайте свою прямо в VB. Модули с кодами — нормально, но все ссылки на Workbooks и подобное обращение к Excel нужно переделывать. Назначать переменной значение приложения Excel и обращаться через неё.    

  «Макросы переписываете так, чтобы вынесенные функции ссылались на эту DLL»  
Это значит, что не надо все модули и формы переносить в VB, а надо лишь в VB  сделать Dll. Прописать в ней все функции и коды, а в проекте VBA просто подключить ссылку в библиотеках на эту Dll и обращаться к ней как к классу. Перед подключением эту Dll необходимо будет зарегестрировать в системе.{/post}{/quote}  
Спасибо большое! Теперь я точно понял, что не стоит с этим мне запариваться ))) не стоит этот файл и макрос такого, не тот уровень у меня (((  
Еще раз Спасибо Вам.

I have prepared lots of Excel based Tools using excel macros. In these Excel Sheets user normally browses Excel files or inputs data as guided by the tool and then runs my macros to generate a desired output. Everything is working fine.

However, instead of distributing these tools as Excel sheets, can I convert my codes to a exe file and distribute it to users who can run it there?

I searched a lot on Excel to exe related threads but didn’t get a satisfying answer hence thought of starting a new thread.

0m3r's user avatar

0m3r

12.2k15 gold badges33 silver badges70 bronze badges

asked Oct 26, 2018 at 6:00

nikhild64's user avatar

2

This answer might not be satisfying too but the fact is that Excel is no programming tool to produce stand alone applications (exe).

Therefore you need to re-write your project using a real programming language (and tool) like VB.NET or C#. VBA (Visual Basic for Applications) is meant to run in applications as its name says (like Excel or other Office applications) but not stand alone.

There is no way of just converting the code (by pressing a button or something) you will need to re-write the whole project/tool completely (by hand) in another programming language if you plan to use your application stand alone (exe) without Excel.

Please note that even if VBA and VB.NET use similar syntax you cannot just copy the code. These are 2 completely different languages and the code needs to be re-written. Even if the result would look similar it is not the same.

answered Oct 26, 2018 at 6:19

Pᴇʜ's user avatar

PᴇʜPᴇʜ

56k9 gold badges49 silver badges73 bronze badges

1

Your solution is not the answer to your need. What you actually want is an Add-In file that you can distribute to your users. This file extends Excel and gives users access to your tools, but can be password protected and hidden so users can’t mess with it . At it’s simplest it’s just a case of saving the workbook containing your code as a file of type Add-in, but you do need to rewrite your code to make explicit which workbook you are working with, since ThisWorkbook in your code is the add-in, and ActiveWorkbook is the file that the user has open while using your addin. You will also need to develop menus to give users access to your tools, since they can’t see the add-in.

answered Oct 26, 2018 at 13:22

Harassed Dad's user avatar

Harassed DadHarassed Dad

4,6491 gold badge10 silver badges12 bronze badges

You can only do that if you do it outside excel, write a program in a Windows development tool which is able to communicate between applications. You can use many Microsoft development platforms for this, f.e. C#.

What you want to do is start a process to interfere with another process.

How to do it depends a lot on the targetted windows-version. It is not an easy subject, and I don’t know if you really want to go this way. But if you do, Google on inter-process communication and Windows.

This is a nice overview article:

https://learn.microsoft.com/en-us/windows/desktop/ipc/interprocess-communications

answered Oct 26, 2018 at 6:22

Bert Verhees's user avatar

Bert VerheesBert Verhees

1,0473 gold badges15 silver badges25 bronze badges

0

Before compilation your Excel workbook into EXE file you need to verify that environment of your computer meets the requirements of the DoneEx XCell Compiler.

To compile a spreadsheet to an EXE you need to have the Microsoft Windows 7 or higher and Microsoft Office 2007 SP3 or higher with the latest service pack and updates installed on your computer. Our product supports all 32-bit and 64-bit versions of Excel from 2007 and higher, including Excel from Office 365. Please make sure that Microsoft Office Visual Basic for Application (VBA) component is selected in your MS Office installation.

We assume that you have already downloaded and installed the DoneEx XCell Compiler on your computer.

Excel compiler works  with the copy of the workbook, so your original workbook will not be altered.

Before workbook compilation, you need to adjust your Excel  settings to allow Excel Compiler to secure your workbook.

You need to enable “Trust access to the VBA project object model” MS Excel option via the following path:
Excel Options >> Trust center >> click button “Trust Center Settings…” >> Macro Settings >> enable check box “Trust access to the VBA project object model”

Enable Excel VBA Project trast access

You need to perform this step only once, before the first compilation.

How to Compile a Excel Workbook to an EXE File

  •  Copy a workbook you would like to compile into the “My Documents” folder or its sub-folder.
  •  Open the workbook by double clicking on it with the left mouse button in the Windows Explorer.
  • The workbook will be opened in your Excel version. In our explanation we will be using our Sample.xls file.
  • Select DoneEx >> XCell Compiler >> Compile, from the Excel main menu bar.
    DoneEx XCell Compiler menu in Microsoft Excel
  • The following dialog form will appear.

DoneEx XCell Compiler options

  • The ‘Application Name’ field is filled by the workbook name by default.
  • Put the version number 1 0 2 as shown in the above image
  • Enter the copyright text in the copyright box.
  • The target path shows the location and file name of your compiled application. By default, the location of the compiled EXE file will be in the same folder as where your original workbook is located. By default, the name of your compiled EXE will be the same as your original workbook name but with a ‘.EXE’ file extension.
  • Click the compile button in the XCell Compiler screen. Once the compilation is completed, the following message will be displayed.

Message box: Workbook compilation done successfully

  • Click OK on the compilation message screen.
  • Click the close button on the XCell Compiler screen.
  • Close Excel.
  • Once the Excel worksheet is compiled, a file with the EXE format will be saved at the specified target path.
    Browse “My Documents” to use the compiled file, and then just double click the compiled file icon (sample.exe file) with the left mouse button.
  • The file will be opened in a Microsoft Excel environment .
  • The file is secured now; you can send the compiled file to your client with peace of mind.

 

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

Однако вместо того, чтобы распространять эти инструменты в виде листов Excel, могу ли я преобразовать свои коды в исполняемый файл и распространить его среди пользователей, которые могут запускать его там?

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

2018-10-26 06:00

3

ответа

Этот ответ тоже может быть неутешительным, но дело в том, что Excel не является инструментом программирования для создания автономных приложений (exe).

Поэтому вам нужно переписать ваш проект с использованием реального языка программирования (и инструмента), такого как VB.NET или C#. VBA (Visual Basic для приложений) предназначен для запуска в приложениях, как следует из его названия (например, Excel или другие приложения Office), но не отдельно.

Нет способа просто преобразовать код (нажатием кнопки или чего-то еще), вам нужно будет полностью переписать весь проект / инструмент (вручную) на другом языке программирования, если вы планируете использовать свое приложение отдельно (exe) без Excel.

Обратите внимание, что даже если VBA и VB.NET используют похожий синтаксис, вы не можете просто скопировать код. Это 2 совершенно разных языка, и код необходимо переписать. Даже если результат будет выглядеть похожим, это не то же самое.

2018-10-26 06:19

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

2018-10-26 13:22

Вы можете сделать это только в том случае, если вы делаете это вне Excel, напишите программу в средстве разработки Windows, которая может взаимодействовать между приложениями. Для этого вы можете использовать множество платформ разработки Microsoft, например C#.

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

Как это сделать, во многом зависит от целевой версии Windows. Это непростая тема, и я не знаю, действительно ли вы хотите пойти по этому пути. Но если вы делаете, Google на межпроцессное взаимодействие и Windows.

Это хорошая обзорная статья:

https://docs.microsoft.com/en-us/windows/desktop/ipc/interprocess-communications

2018-10-26 06:22

Как создать исполняемый файл на языке vba — VBA?

Yarilobez

Дата: Вторник, 02.05.2017, 09:15 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Здравствуйте. Искал и не смог найти нигде информации о создании exe файла с формой на vba. Подскажите пожалуйста как то сделать?(Необходимо для того, чтобы была возможность пользоваться функциями exel начиная с матриц и сложнее) :'(

 

Ответить

and_evg

Дата: Вторник, 02.05.2017, 09:25 |
Сообщение № 2

Группа: Проверенные

Ранг: Обитатель

Сообщений: 416


Репутация:

72

±

Замечаний:
0% ±


Excel 2007

Никак. Нет такой возможности.

 

Ответить

Yarilobez

Дата: Вторник, 02.05.2017, 09:50 |
Сообщение № 3

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

А нельзя на другом каком языке это сделать? VB не дает возможности работы с матрицами?

 

Ответить

Rioran

Дата: Вторник, 02.05.2017, 17:13 |
Сообщение № 4

Группа: Авторы

Ранг: Ветеран

Сообщений: 903


Репутация:

290

±

Замечаний:
0% ±


Excel 2013

Yarilobez, здравствуйте.

VBA (Visual Basic for

Applications) — это язык, зашитый внутрь приложений Microsoft Office: таких, как Excel, Word, Access и прочие. В среде Windows от той же компании можно создать исполняемые файлы, но будут они c расширением .vbs — от языка Visual Basic Script, кровный брат VBA с некоторыми отличиями в синтаксисе и характере переменных. Оба языка одинаково хорошо могут решать широкий спектр задач, связанных с матрицами — для этих языков они будут называться массивами.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279

 

Ответить

Rioran

Дата: Вторник, 02.05.2017, 17:17 |
Сообщение № 5

Группа: Авторы

Ранг: Ветеран

Сообщений: 903


Репутация:

290

±

Замечаний:
0% ±


Excel 2013

создании exe файла с формой на vba

Что касается формы, более привычной для любителя VBA / VBS, то один из способов это сделать — разобраться в создании файла .hta но будьте готовы, что формат этот по современным меркам устарел, хоть и решает часть графических задач. А вот именно .exe файл с формами и логиками — могу рекомендовать написать на Au3, но язык этот уже совсем не похож на VBA и осваивать его тонкости придётся с нуля. Хотя есть частичное сходство с VBS.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279

 

Ответить

RAN

Дата: Вторник, 02.05.2017, 19:49 |
Сообщение № 6

Группа: Друзья

Ранг: Экселист

Сообщений: 5645

А вот именно .exe файл с формами и логиками — могу рекомендовать написать на Au3, но язык этот уже совсем не похож на VBA

А почему не VB6, или VB.Net?
VB6 почти 1 в 1 VBA.
Другое дело, что для того, чтобы

чтобы была возможность пользоваться функциями exel

нужно, как минимум, иметь Excel. И какой тогда смысл делать .exe файл?


Быть или не быть, вот в чем загвоздка!

 

Ответить

Yarilobez

Дата: Среда, 03.05.2017, 09:08 |
Сообщение № 7

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Для регистрации программы вроде как .exe файл нужен(так сказали). У меня информации мало, даже нз, как делать. А программу нужно написать. Уточнить не могу ни у кого :(

 

Ответить

Yarilobez

Дата: Среда, 03.05.2017, 09:12 |
Сообщение № 8

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

А VB6 98 года же? VB.net входит в VS что ли?

 

Ответить

K-SerJC

Дата: Среда, 03.05.2017, 10:38 |
Сообщение № 9

Группа: Проверенные

Ранг: Обитатель

Сообщений: 487


Репутация:

86

±

Замечаний:
0% ±


Excel 2013

Visual Baisic входит в единую среду разработки Visual Studio
для личного пользования с интернета можно бесплатную версию скачать

в принципе создать рабочий exe и на vb6 можно, и что с того что он 98г.в.


Благими намерениями выстелена дорога в АД.

 

Ответить

Prerequisites

You need to have the Microsoft Windows 7 or higher as well as Microsoft Office 2007 SP3 or higher with the latest service pack and updates installed on your computer.
Please make sure that Microsoft Office Visual Basic for Application (VBA) component is selected in your MS Office installation. To verify that you need to open Microsoft Excel and click Alt+F11 key combination. If the VBA Project is opened that means you have Visual Basic for Application (VBA) in your Excel installation.

Before protect your workbook with XCell Compiler you need to enable “Trust access to the VBA project object model” MS Excel option via the following path:
Excel Options >> Trust center >> click button “Trust Center Settings…” >> Macro Settings >> enable check box “Trust access to the VBA project object model”
You need to perform this step only once, before the first compilation.

Steps

1. Download the DoneEx XCell Compiler and install it on your computer. Detailed instruction how to download and install the product you may find in video above.

2. Open your workbook by double clicking on it in the Windows Explorer. If it did not open then do the following:
Open Excel from Windows Start Menu shortcut and load your Excel spreadsheet  by using the Excel File Open menu, or just Drag-and-Drop your workbook on to the Excel window.

3. Find DoneEx menu at Excel main menu.
Click DoneEx >> XCell Compiler >> Compile

DoneEx XCell Compiler menu in Excel
4. Fill out the compilation form with your data and preferred options, then click on the “Compile” button.

XCell compiler options form

5. When compilation is completed,  close Excel, and run the EXE file. You may find the compiled EXE file at the location that you have chosen  in the “Target Path” field on the compilation form.

The workbook is secured now. You can send the compiled application to your client with peace of mind.

Compile Excel workbook to EXE from command line

XCell Compiler allows you to run compilation from command line by using XCMD.EXE tool on a computer with the product registered with Business Pro license.
To use XCMD.EXE tool you need to prepare .xcfg configuration file for the workbook you are going to compile. To do that you need to compile your workbook from Excel DoneEx menu item with “Options Settings configuration” option enabled.

Please see details about Options Settings Configuration.

When .xcfg file for your workbook is ready you need to copy XCMD.EXE file from the DoneEx XCell Compiler installation folder to the folder where you workbook and .xcfg file are located.

Usage of XCMD.EXE tool:
XCMD.EXE <full name of .xcfg file>

XCell Compiler command line compilation

See also:

Compiled workbook limitations and workarounds

Я создал инструмент с использованием VBA (.xlsm) и хотел бы преобразовать его в файл .exe. Я бы хотел, чтобы этот значок Excel не отображался после преобразования в файл .exe (действующий как пользовательское приложение). Я знаю, что вы можете создать ярлык и изменить значок, но хотели бы полностью удалить значок Excel или, по крайней мере, все еще иметь файл excel где-то в папке, но быть доступным через значок .exe.

Есть идеи, как это лучше всего сделать?

Большое спасибо!

2 ответа

Лучший ответ

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

  1. Используя Блокнот, создайте файл .vbs. Как его создать?
    Просто сохраните файл и выберите Все файлы (*) в диалоговом окне Сохранить файл как .
    Придумайте удобное имя и используйте расширение .vbs.
    Вот и все, теперь у вас есть исполняемый файл Vb Script.

    введите описание изображения здесь

  2. Затем напишите код, чтобы открыть и запустить Excel.
    Вы можете ознакомиться с тем, что здесь говорит brettdj.
    Обратите внимание на комментарий Дэвида. хотя. Если вам нужно открыть книгу в режиме Readonly (сохранять книгу не нужно, это шаблон) или ReadWrite (необходимо сохранить книгу после запуска макроса). Самый простой код будет выглядеть примерно так, как написал brettdj. Давайте просто обратим внимание на открытие книги как ReadOnly.

    xlFilePath = "C:UserUsernamemyexelfile.xlsm"
    Set xlWb = xlApp.Workbooks.Open(xlFilePath, 0, True) '/* opens as ReadOnly */
    

    Измените True на False, чтобы получилось ReadWrite. Сохраните, и ваш exe-файл готов.

  3. Поскольку вам нужен исполняемый файл, я предполагаю, что у вас есть формы в Excel.
    Если мое предположение верно, вы можете затем использовать Events для закрытия и завершения Excel.
    Что-то вроде ниже который закрывает книгу после закрытия Userform.

    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
        ThisWorkbook.Close False '/* do not save changes */    
    End Sub
    
  4. Вам нужно будет использовать другое событие в самой книге, чтобы закрыть приложение Excel .
    Это должно выглядеть примерно так:

    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        Application.Quit '/* quits Excel before actually closing the workbook */
    End Sub
    


2

L42
18 Янв 2018 в 01:34

Вы можете легко создать EXE-файл с помощью Visual Studio. Я никогда не слышал, чтобы кто-нибудь использовал Excel для создания файла .exe.

Использование Visual Studio дает огромные преимущества! Для всего, что использует управляемую среду (включая все, что написано на C # и VB.NET), требуется платформа .NET. Вы можете просто распространять ваш .EXE в этом сценарии, но им потребуется установить соответствующую структуру, если у них ее еще нет.


0

ASH
18 Янв 2018 в 00:40

Содержание

  • Может ли Excel конвертировать в exe?
  • Как сделать исполняемый файл макроса?
  • Как полностью удалить VBA из Excel?
  • Как преобразовать Excel в автономную версию?
  • Как открыть exe-файл в Excel?
  • Как преобразовать Excel в программу?
  • Как создать исполняемый файл в VBA?
  • Можно ли скомпилировать код VBA?
  • Как преобразовать макросы в обычный формат в Excel?
  • Как отредактировать макрос в Excel?
  • Не можете редактировать макросы Excel?
  • Как отключить код VBA?
  • Сколько раз Excel позволяет отменять записи?
  • Как называется автономный файл в Excel?
  • Как называется файл Excel?

Компилятор XCell (также известный как конвертер Excel в EXE) — это программа для защиты книг Excel. Он обеспечивает очень простое и беспроблемное преобразование excel в exe. Вы можете преобразовать электронную таблицу Excel (файл XLS, XLSX, XLSM, XLSB) в приложение EXE с надежно скрытыми формулами в двоичном формате и защищенным кодом VBA.

Как сделать исполняемый файл макроса?

Чтобы сделать exe из текущего макроса или функции, нажмите меню «Выполнить» -> «Сделать Exe». Функция «make exe» также используется для запуска макросов в отдельном процессе. QM создает. qmm (скомпилированный макрос) или .exe и выполняет его в отдельном процессе.

Как полностью удалить VBA из Excel?

Дважды щелкните каждую вкладку листа и убедитесь, что в окне справа нет кода — НЕТ. Вы можете щелкнуть в окне кода и нажмите Ctrl + A, а затем нажмите клавишу Delete.

Как преобразовать Excel в автономную версию?

Как превратить электронную таблицу Excel в отдельное приложение

  1. Загрузите и установите XCell Compiler по ссылке в разделе «Ресурсы».
  2. Запустите Microsoft Excel и откройте электронную таблицу, которую вы хотите преобразовать в автономный EXE-файл.
  3. Щелкните драгоценный камень Office в верхнем левом углу окна.

Как открыть exe-файл в Excel?

Например, чтобы открыть Excel, укажите имя документа электронной таблицы Excel. Windows перечисляет найденные файлы. Дважды щелкните имя документа. Это открывает EXE-файл косвенно, так как Windows требуется EXE-программа для чтения документа.

Как преобразовать Excel в программу?

Как превратить электронную таблицу Excel в программу (15 шагов)

  1. Загрузите XCell Compiler (см. Ресурсы).
  2. Дважды щелкните сжатый файл и извлеките его в каталог на жестком диске. …
  3. Нажмите кнопку «Установить», а затем нажмите «Готово», когда установка будет завершена.

Как создать исполняемый файл в VBA?

создание exe или пакета книги на основе vba

  1. Sub workbook_open ()
  2. Dim exe как Excel. Приложение.
  3. Установите exe = Application.
  4. exe.Visible = Ложь.
  5. userform1.Show.
  6. Конец подписки.

Можно ли скомпилировать код VBA?

Вам не нужно выбирать, какие функции VBA необходимо скомпилировать — все методы кода VBA (процедуры, функции и свойства) будут скомпилированы одним щелчком мыши на значке «Скомпилировать » кнопка. Скомпилируйте код VBA с защитой от копирования вместе с ключом активации / регистрации.

Как преобразовать макросы в обычный формат в Excel?

Настройки макроса

  1. Перейдите на ленту в Microsoft Excel и щелкните вкладку с надписью «Файл».
  2. После открытия меню файла нажмите кнопку с надписью «Параметры».
  3. Откроется окно опций с множеством различных опций. …
  4. Затем вы должны нажать кнопку с надписью «Настройки центра управления безопасностью».

Как отредактировать макрос в Excel?

Редактировать макрос

  1. Щелкните вкладку Разработчик.
  2. Щелкните кнопку Macros. Откроется диалоговое окно «Макрос». …
  3. Выберите макрос для редактирования.
  4. Щелкните кнопку Edit. Появится программа Microsoft Visual Basic для приложений. …
  5. При необходимости отредактируйте код макроса.
  6. Нажмите кнопку «Сохранить».
  7. Закройте окно программы Visual Basic для приложений.

Не можете редактировать макросы Excel?

Не могу редактировать макросы

  1. Отобразите вкладку «Разработчик» на ленте.
  2. Щелкните инструмент Macro Security в группе Code. Word отображает диалоговое окно «Центр управления безопасностью».
  3. Убедитесь, что в левой части диалогового окна выбраны параметры макроса. (Этот параметр должен быть выбран по умолчанию.) …
  4. Щелкните переключатель Включить все макросы.

Как отключить код VBA?

Действия по отключению макроса VBA

Нажмите на Инструменты> Visual Basic для приложений. В окне проекта VB выберите нужный модуль, содержащий код VBA. Используйте мышь (нажмите и удерживайте левую кнопку мыши), чтобы выделить весь код, который вы хотите отключить.

Сколько раз Excel позволяет отменять записи?

По умолчанию Microsoft Excel отслеживает 16 уровней «отмены». Уровни отмены содержат журнал отмены большинства действий, которые вы выполняете в Excel. Вы можете изменить количество уровней отмены, добавив запись в реестр Microsoft Windows. Примечание. Мы не рекомендуем увеличивать количество уровней отмены выше 100.

Как называется автономный файл в Excel?

В Excel отдельный файл называется а. рабочая тетрадь.

Как называется файл Excel?

Файл Excel называется рабочая тетрадь потому что, как и страницы в книге, он также содержит разные листы, называемые рабочими листами. Для сохранения в книге должен быть минимум один лист. Excel — это набор рабочих листов (Лист 1, Лист 2 и т. Д.). Сборник рабочих листов называется Рабочей книгой.

Интересные материалы:

Какая из встроенных газовых духовок самая лучшая?
Какая изолента лучше?
Какая изоляция лучше всего подходит для котельных труб?
Какая изоляция лучше всего подходит для транспортной тары?
Какая известная цитата Дарта Сидиуса?
Какая калина лучше всего для живой изгороди?
Какая капельница используется при обезвоживании?
Какая карта памяти лучше класса 1 или класса 10?
Какая карта памяти лучше всего подходит для цифровой зеркальной камеры Canon?
Какая карта памяти лучше всего подходит для Xiaomi?

Понравилась статья? Поделить с друзьями:
  • Макрос excel range value
  • Макрос excel if then else
  • Макрос as excel application
  • Макрос and excel свойства
  • Макрос access в word