ВБА ФрееФиле | Како се користи функција ФрееФиле у програму Екцел ВБА?

Екцел ВБА ФрееФиле

ФрееФиле је функција у ВБА која је доступна само као ВБА функција, а не као функција радног листа. ВБА ФрееФиле функција враћа јединствени целобројни број у датотеку која се отвори и чува број за следећи доступан број датотеке.

Датотеке обично отварамо са рачунара или да бисмо нешто написали или само за читање, док се на те датотеке позивамо јединственим целим бројем. Функција ВБА ФрееФиле омогућава нам да одредимо тај јединствени целобројни број који ћемо доделити отварању датотеке за читање, писање и отварање датотека помоћу ВБА.

Сада погледајте синтаксу израза ОПЕН.

ОТВОРИ [Адреса путање датотеке] За [Режим за отварање] Као [Број датотеке]

Адреса пута датотеке: Морамо да напоменемо адресу датотеке на рачунару коју покушавамо да отворимо.

Режим за отварање: Приликом отварања датотеке морамо бити свесни какав ћемо модел применити. Овде можемо користити три режима, „Инпут Моде“, „ОутПут Моде“ и „Адд Моде“.

Режим уноса за читање само датотеке.

Излазни режим за брисање постојећих података и уметање нових података.

Режим додавања за додавање нових података уз задржавање постојећих података.

Број датотеке: Овим аргументом можемо се позвати на датотеку коју отварамо. Овде функција „ФрееФиле“ игра виталну улогу и враћа јединствени цео број.

Како се користи функција ФрееФиле у програму Екцел ВБА?

Овај ВБА ФрееФиле Екцел образац можете преузети овде - ВБА ФрееФиле Екцел предложак

Сада погледајте доњи код.

Шифра:

 Под ФрееФиле_Екампле1 () Затамни путању као низ Затамни број датотеке као целу путању = "Д: \ Чланци \ 2019 \ Датотека 1.ткт" Број_фреме = Отворена путања ФрееФиле-а за излаз као Датотека броја датотеке = "Д: \ Чланци \ 2019 \ Датотека 2.ткт "ФилеНумбер = ФрееФиле Опен Патх за излаз као ФилеНумбер Енд Суб 

Сада ми дозволите да декодирам горњи код да бисте га разумели.

Прво сам прогласио две променљиве.

 Затамни путању као низ, пригуши број датотеке као цео број 

Тада сам доделио путању до датотеке са њеним именом.

Путања = "Д: \ Чланци \ 2019 \ Датотека 1.ткт"

Тада сам за још једну променљиву доделио функцију ФРЕЕФИЛЕ.

ФилеНумбер = ФрееФиле

Тада сам помоћу изјаве Опен отворио текстуалну датотеку у горе поменутој путањи датотеке.

 Отворите путању за излаз као број датотеке

Ок, сада ћу покренути код по линију притиском на тастер Ф8 и видети вредност променљиве „Број датотеке“.

Приказује број датотеке као 1. Дакле, функција бесплатне датотеке аутоматски резервише овај број у почетној датотеци. Док се ово покреће, не отварају се друге датотеке.

Сада ћу наставити да извршавам следећи ред ВБА кода и видећу који је број датотеке ако пређем на следећи ред.

Сада пише 2. Дакле, функција ФрееФиле задржава јединствени цели број 2 за другу отварајућу датотеку.

Функција ФрееФиле увек даје 1 ако затворимо Екцел датотеку

Једна ствар коју морамо да погледамо је да функција ВБА „ФрееФиле“ увек враћа 1 ако затворимо отворену датотеку пре него што отворимо другу екцел датотеку.

На пример, погледајте доњи код.

Шифра:

 Суб ФрееФиле_Екампле2 () Затамни путању као низ Затамни број датотеке као целобројни пут = "Д: \ Чланци \ 2019 \ Датотека 1.ткт" Број датотеке = ФрееФиле Отвори путању за излаз као број датотеке Затвори путању броја датотеке = "Д: \ Чланци \ 2019 \ Датотека 2 .ткт "Број датотеке = Отворени пут датотеке ФрееФиле за излаз као број датотеке Затвори број датотеке Заврши крај 

Сада ћу поново извршити код по ред притиском на тастер Ф8.

Каже 1 као и обично.

Сада ћу напредовати на следећи ниво.

Чак иу другом покушају каже 1.

Разлог за то је што смо користили изјаву Затвори датотеку, ФрееФиле препознаје новоотворену датотеку као нову и враћа цео број као 1.