Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8

Как открыть файл в Word в формате DosText

25.09.2007, 17:15. Показов 3983. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В макросе Word'а нужно последовательно
открыть,обработать,закрыть несколько десятков текстовых файлов(*.ТХТ) в досовской кодировке.
При открытии требуется автоматом вибирать нужный формат.Word не хочет открывать DosText.
Подскажите, как это сделать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.09.2007, 17:15
Ответы с готовыми решениями:

Как открыть файл в формате .svs
Добрый день, форумчане! Подскажите, как открыть файл формате .svs? Открываю вордом, появляются крокозябры, если файл большой, то...

Как открыть файл в richtextbox в формате UTF-8
Сделал программу которая открывает текстовые файлы.Всё работает просто я не могу нигде найти как сделать чтобы моя программа открывала...

Как открыть файл на HDD в бинаром формате. HELP
Как открыть файл на HDD в бинаром формате? Потому как FileSystemObject позволяет открыть в текстовом только. Общая задача такая: ...

14
0 / 0 / 1
Регистрация: 28.07.2007
Сообщений: 177
25.09.2007, 20:09
Попробуй в Documents.Open добавить параметр Encoding. Возможные значения смотри в Object Browser. Например
Documents.Open FileName:='MyFile.txt', ConfirmConversions:=False, Encoding:=msoEncodingOEMCyrillic
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
27.09.2007, 11:23  [ТС]
В Word Visual Basic нет параметра Encoding относительно метода Documents.Open -->

Documents.Open(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format)

Encoding:=msoEncodingOEMCyrillic это наверно для VB или Скриптов, а мне надо все сделать в VBA.
0
0 / 0 / 0
Регистрация: 05.12.2006
Сообщений: 19
27.09.2007, 13:47
Если я правильно понял проблему, то что-то типа того:
Visual Basic
1
2
3
4
5
6
7
8
Sub a()
Dim oFc As Object
'допустимые форматы файлов
For Each oFc In FileConverters 
        Debug.Print oFc
Next
Documents.Open FileName:='d:2.txt',  Format:=FileConverters('MS-DOS Text with Layout').OpenFormat
End Sub
А вообще-то в Open есть опция
Format: The file converter to be used to open the document. Can be one of the following WdOpenFormat constants: wdOpenFormatAuto, wdOpenFormatDocument, wdOpenFormatRTF, wdOpenFormatTemplate, wdOpenFormatText, or wdOpenFormatUnicodeText. The default value is wdOpenFormatAuto сооотвественно они равны 0 1 3 2 4 5
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
27.09.2007, 18:05  [ТС]
Проблема как раз в том, что формата 'MS-DOS Text with Layout' отсутствует среди возможных значений опции Format. Поэтому обойти окошко подтверждения преобразования формата в ручную не получается.
А в случае необходимости открытия 1000 текстовых досовских кирилических файлов от подтверждения преобразования каждо из них может испортиться настроение у самого большого оптимиста.
Хочется добиться полной так сказать автоматизации.
Иначе зачем вообще макросы писать
0
0 / 0 / 0
Регистрация: 05.12.2006
Сообщений: 19
27.09.2007, 19:15
Используй Format:=FileConverters('MS-DOS Text with Layout').OpenFormat (см выше)
0
0 / 0 / 1
Регистрация: 28.07.2007
Сообщений: 177
29.09.2007, 12:02
VASIA извини, ты с каким Word-ом работаешь?
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
30.09.2007, 11:43  [ТС]
WORD у меня 97
И мне нужно именно под него макрос написать
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
30.09.2007, 12:01  [ТС]
В WORD97

Documents.Open FileName:='TEXT.TXT', Format:=FileConverters('MS-DOS Text with Layout').OpenFormat

Ошибка выполнения '5941'
Запрашиваемый номер семейства не существует
0
0 / 0 / 0
Регистрация: 05.12.2006
Сообщений: 19
30.09.2007, 12:35
Я то-же с 97 работаю. Для начала запусти следующее:

Visual Basic
1
2
3
4
5
6
7
Dim I As Integer
For I = 1 To FileConverters.Count
Debug.Print I, FileConverters(I)
Next
Найди номер MS-DOS Text with Layout. Должен быть 3
Открывай как:
Documents.Open FileName:='d:2.txt', Format:=FileConverters(3).OpenFormat
Естественно, если ты открываешь из ворда. Если нет, то сначала что-то типа
Visual Basic
1
2
3
4
dim oWord as object
set oWord=createobject('Word.application')
 
oWord.Documents.Open FileName:='d:2.txt', Format:=FileConverters(3).OpenFormat
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
30.09.2007, 13:33  [ТС]
Documents.Add
For I = 1 To FileConverters.Count
a$ = I
Selection.TypeText Text:=a$ + '//' + FileConverters(I) + Chr$(13)
Next
===============
Список конвертеров моего наверное кривого Ворда
--
1//Контакты Schedule+
2//Личная адресная книга
3//Адресная книга Outlook
4//HTML Document
5//Word 6.0/95 для Windows и Макинтоша
6//Windows Write
7//Word (азиатские версии) 6.0/95
8//Восстановление текста из файла любого формата.
9//WordPerfect 5.x
10//WordPerfect 5.0
11//WordPerfect 5.1 для DOS
12//WordPerfect 5.x для Windows
13//Файл данных (вторичный) WordPerfect 5.1 или 5.2
14//Файл данных (вторичный) WordPerfect 5.0
15//WordPerfect 6.x
16//Книга Microsoft Excel
17//Word 6.0/95

это что только у меня такой список?
0
2 / 2 / 1
Регистрация: 30.07.2007
Сообщений: 206
01.10.2007, 10:57
а если такой алгоритм?
1) при открытии текстового файла определять кодировку (dos/win). 2) если это dos-кодировка, то автоматически перекодировать текст в win-кодировку. 3)записывать переконвертированный текст в открытый файл.

Чтобы в ворде все это происходило автоматически, достаточно записать весь код в макрос под именем AutoOpen (вроде...).
0
0 / 0 / 0
Регистрация: 05.12.2006
Сообщений: 19
01.10.2007, 11:43
Я бы сначала попробовал войти в установки офиса и и выделить недостающие фильры и конверты (как в самом офисе, так и в ворде)
0
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 8
01.10.2007, 12:59  [ТС]
Все очень просто
Просто я лопух
Действительно выделить в программе установки недостающие фильры и конверты (как в самом офисе, так и в ворде), и все заработало.
Documents.Open FileName:='TEXT.TXT', Format:=FileConverters('MS-DOS Text with Layout').OpenFormat
проходит на ура.

Тема снята.
Всем спасибо.
0
Antichrist
20.12.2007, 11:29
А как сделать тоже самое но текст Дос без форматирования, его вообще нет в списке даже если все конверторы поставить, хотя при открытии в ручную есть - вторая строка 'Текст DOS'. (Офис97)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2007, 11:29
Помогаю со студенческими работами здесь

Как макросом сохранить в файл из Word картинку в стандартном формате?
Как макросом сохранить в файл из Word картинку в стандартном формате (лучше gif , jpeg , png , хуже - bmp ), и можно ли это вообще сделать ?

Emgu CV - как открыть видео-файл в формате AVI и показать его в ImageBox?
Короче говоря, дело такое: надо сделать аналог видео-плеера на EmguCV. Пока бьюсь с открытием файла в AVI. Пытаюсь делать по аналогии с...

Как в VB запустить открыть файл Word?
Здравствуйте! Подскажите пожалуйста, как в по нажатию на кнопку открыть шаблон Word? Окно для открытия уже написал, а вот как открывать...

Как открыть файл word в memo
Подскажите как открыть файл word в memo с возможностью редактирования?

Подскажите как открыть файл word в memo
Подскажите возможно открыть word документ в memo только для чтения?? если да то как это сделать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru