Замените текст у текстуалној датотеци користећи ВБА у Мицрософт Екцелу

Преглед садржаја

Доле наведени макрои могу се користити за замену текста у текстуалној датотеци,
на пример. када желите да промените сепаратор колона у текстуалној датотеци
пре него што га увезете у Екцел радни лист или након што извезете радни лист у текстуалну датотеку.

Суб РеплацеТектИнФиле (СоурцеФиле Ас Стринг, _ сТект Ас Стринг, рТект Ас Стринг) Дим ТаргетФиле Ас Стринг, тЛине Ас Стринг, тСтринг Ас Стринг Дим п Ас Интегер, и Ас Лонг, Ф1 Ас Интегер, Ф2 Ас Интегер ТаргетФиле = "РЕСУЛТ.ТМП "Иф Дир (СоурцеФиле) =" "тхен Екит Суб Иф Дир (ТаргетФиле)" "Тхен Он Еррор Ресуме Нект Килл ТаргетФиле Он Еррор ГоТо 0 Иф Дир (ТаргетФиле)" "Онда је МсгБок ТаргетФиле & _" већ отворен, затворите и избришите / преименујте датотеку и покушајте поново. ", _ вбЦритицал Екит Суб Енд Иф Енд Иф Ф1 = ФрееФиле Опен СоурцеФиле Фор Инпут Ас Ф1 Ф2 = ФрееФиле Опен ТаргетФиле Фор Оутпут Ас Ф2 и = 1 'цоунтер цоунтер Апплицатион.СтатусБар =" Реадинг дата фром " & _ ТаргетФиле & "…" Иако није ЕОФ (Ф1) Ако је Мод 100 = 0, онда Апплицатион.СтатусБар = _ "Ред за читање #" & и & "у" & _ ТаргетФиле & "…" Унос реда #Ф1, тЛине Ако сТект "" Затим РеплацеТектИнСтринг тЛине, сТект, рТект Крај Ако се штампа #Ф2, тЛине и = и + 1 Венд Апплицатион.СтатусБар = "Затварање датотека …" Затвори Ф1 Затвори Ф2 Убиј изворну датотеку 'обриши или изворна датотека Име ТаргетФиле Ас СоурцеФиле 'преименујте привремену датотеку Апплицатион.СтатусБар = Фалсе Енд Суб Привате Суб РеплацеТектИнСтринг (СоурцеСтринг Ас Стринг, _ СеарцхСтринг Ас Стринг, РеплацеСтринг Ас Стринг) Дим п Ас Интегер, НевСтринг Ас Стринг До п = ИнСтр (п + 1 , УЦасе (СоурцеСтринг), УЦасе (СеарцхСтринг)) Ако је п> 0, онда 'замените СеарцхСтринг са РеплацеСтринг НевСтринг = "" Ако је п> 1 Тада је НевСтринг = Мид (СоурцеСтринг, 1, п - 1) НевСтринг = НевСтринг + РеплацеСтринг НевСтринг = НевСтринг + Средина (СоурцеСтринг, _ п + Лен (СеарцхСтринг), Лен (СоурцеСтринг)) п = п + Лен (РеплацеСтринг) - 1 СоурцеСтринг = НевСтринг Енд Иф Иф п> = Лен (НевСтринг) Тада је п = 0 Петља до п = 0 Енд Суб СубРеплацеТектИнФиле () РеплацеТектИнФиле ТхисВоркбоок.Патх & _ "\ РеплацеИнТектФиле.ткт", "|", ";" 'замењује све знакове пипе (|) тачком-зарезом (;) Енд Суб

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave