Помогите со скриптом в Word'e

Программирование на Visual Basic for Applications
--Andrey--
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.05.2007 (Ср) 0:37

Помогите со скриптом в Word'e

Сообщение --Andrey-- » 23.05.2007 (Ср) 0:45

Здравствуйте уважаемые форумчане!
Второй день ищу на форумах решение моейй проблемы, надеюсь здесь мне помогут.
Итак:
Есть некоторый текст в форде (блокноте не важно) он имеет следующее форматирование:

<QUE1:01000
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE1>
<QUE2:00100
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE2>
<QUE3:01000
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE3>
<QUE4:01000
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE4>


Как сделать так, чтобы эти числа были по списку?

Чтобы если например удалить

<QUE2:00100
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE2>


Список автоматом стал по порядку (сдвинулся, т.е. тот que который был 2-м мы удалили, тот который был 3-м станет 2-м, а тот который был 4-м станет 3-м):

<QUE1:01000
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE1>
<QUE2:00100
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE2>
<QUE3:01000
<TEXT:текст вопроса TEXT>
<PICT:картинка.jpg PICT>
<HINT: подсказка HINT>
QUE3>

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.05.2007 (Ср) 8:00

Ужос.
Недо-XML.
А вот дожми до полного XML и тогда, перебирая ноды, заменяй их имена.
Впрочем, после дожатия до XML вообще непонятно, зачем номера. Просто <QUE> и </QUE>.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

--Andrey--
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.05.2007 (Ср) 0:37

Сообщение --Andrey-- » 23.05.2007 (Ср) 8:21

Спасибо за ответ, но мне нужно с помощью встроенного языка программирования...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.05.2007 (Ср) 8:35

А я с помощью внешнего предлагаю?..
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

--Andrey--
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.05.2007 (Ср) 0:37

Сообщение --Andrey-- » 23.05.2007 (Ср) 10:33

Просто я не могу понять как мне получить конечный результат ...
Со скриптом было бы проще ...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 23.05.2007 (Ср) 11:02

Используй XML, тогда сможешь использовать готовые механизмы для работы с базой вопросов и ответов.
Иначе надо писать парсер это формата. У формата структура строгая (ее только номер в QUE портит), парсер будет несложный, но лень, если честно.
Если не лень писать парсер самому, то последовательность такая:
1. Ищешь "<QUE", определяешь номер, ищешь "QUEn>"; текст между этими тегами передаешь в п.2.
2. Делишь текст по строкам, например Split(Text, vbNewLine), построчно передаешь в п.3.
3. Проверяешь, что вначале есть "<", в конце ">", а между ними ":". Текст между "<" и ":" запоминаешь, как имя параметра. Текст между ":" и последним пробелом перед закрывающим ">@ запоминаешь, как значение параметра.
4. Все необходимые данные у тебя есть: номер узла, название узла, названия и значения параметров узла. Действуй.
Lasciate ogni speranza, voi ch'entrate.

--Andrey--
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.05.2007 (Ср) 0:37

Сообщение --Andrey-- » 23.05.2007 (Ср) 14:06

Для меня это все сложно я программирование изучал в институте давным давно и уже ничего не помню ... не программист я . :oops:

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 28.05.2007 (Пн) 1:08

--Andrey-- писал(а):Для меня это все сложно я программирование изучал в институте давным давно и уже ничего не помню ... не программист я . :oops:


Show me the money!
:oops:
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 28.05.2007 (Пн) 7:21

VB_D3D_Денис, если нечего сказать по существу, не говори ничего. Следующий офтопик в тематических форумах приведет к отключению на неделю.
Lasciate ogni speranza, voi ch'entrate.

--Andrey--
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.05.2007 (Ср) 0:37

Сообщение --Andrey-- » 28.05.2007 (Пн) 12:16

Видно мне никто не поможет - на работе программистов нагрузил - так те сказали что это сложно ... и долго - все блин денег выпрашивают :(
Одна надежда на интернет ...


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 79

    TopList