Овај водич ће показати како се чита текстуална датотека у низ у ВБА.
Текстуалну датотеку можемо читати ред по ред или као целу датотеку.
Прочитајте целу текстуалну датотеку у низ
Текст у текстуалној датотеци обично се састоји од неколико редова, одвојених граничницима. То могу бити зарез („,“), зарез са размаком („,“), тачка -зарез („;“), тачка -зарез са размаком („;“), размак („“), картица (вбТаб ) или у ретким случајевима било који други знак, попут тилде (~). Линије су обично одвојене преломом (вбЦРЛФ).
Најлакши начин за читање читаве текстуалне датотеке у ВБА је покретање следећег кода који ће цео садржај текстуалне датотеке поставити у променљиву стринг. Ова процедура користи наредбу ВБА Опен и функцију ВБА ФрееФиле.
12345678910 | Суб РеадФиле ()Затамните иТктФиле као цео бројДим стрФиле Ас СтрингДим стрФилеТект Ас СтрингстрФиле = "Ц: \ Тест \ ТестФиле.ткт"иТктФиле = ФрееФилеОтворите стрФиле за унос као ФрееФилестрФилеТект = Улаз (ЛОФ (иТктФиле), иТктФиле)Затворите иТктФилеЕнд Суб |
Такође можемо читати текстуалну датотеку у ВБА помоћу ФилеСистемОбјецт. У доњем коду користили смо касно везивање са објектом система датотека.
1234567891011 | Суб РеадТектФиле ()Дим стрТект Ас СтрингЗатамните ФСО као објекатДим ТСО Ас ОбјецтПостави ФСО = ЦреатеОбјецт ("Сцриптинг.ФилеСистемОбјецт")Подесите ТСО = ФСО.ОпенТектФиле ("Ц: \ Тест \ ТестФиле.ткт")стрТект = ТСО.РеадАллТСО.ЗатвориПодесите ОПС = НиштаПоставите ФСО = НиштаЕнд Суб |
Такође можемо користити рано везивање у коду и прогласити објект система датотека тако што ћемо у нашем Екцел пројекту створити референцу на објект система датотека.
1234567891011 | Суб РеадТектФиле ()Дим стрТект Ас СтрингЗатамните ФСО као нови ФилеСистемОбјецтДим ТСО Ас ОбјецтПостави ФСО = ЦреатеОбјецт ("Сцриптинг.ФилеСистемОбјецт")Подесите ТСО = ФСО.ОпенТектФиле ("Ц: \ Тест \ ТестФиле.ткт")стрТект = ТСО.РеадАллТСО.ЗатвориПодесите ОПС = НиштаПоставите ФСО = НиштаЕнд Суб |