Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
18 / 18 / 0
Регистрация: 11.10.2010
Сообщений: 102

FileDialog в Visio

23.06.2011, 19:35. Показов 4448. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, есть вопрос по VBA в Visio.
Подскажите пожалуйста, есть ли в Visio аналог Exell'евского FileDialog? Вернее, почти готов поспорить, что есть, только не могу сообразить как его запустить. Мне даже кажется, должна быть возможность использовать сам FileDialog, только как? Тыкал-тыкал в References, нифига...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.06.2011, 19:35
Ответы с готовыми решениями:

Добавление элементов Visio и интеграция Visio
Добрый день, прошу подсказать чайнику) Есть ли возможность подключения функционала visio viewer и библиотек установленного visio для того...

Visio Связь данных Excel с Visio
Здравствуйте! Подскажите, пожалуйста: есть Excel с данными по связям внутри системы (АСУТП). Нужно изобразить в Visio эту систему. Как...

FileDialog и рисовалка
Написал подобие просто рисовалки, и в планах загрузить в качестве фона какое-то изображение, через диалог. но он так и не открывает его....

9
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
23.06.2011, 23:36
Обсидиан,
вот это FileDialog вставьте в текстовое поле справки и нажмите на клавиатуре клавишу Enter.
0
18 / 18 / 0
Регистрация: 11.10.2010
Сообщений: 102
24.06.2011, 16:08  [ТС]
Ладно, пользуем справку. Приведен такой пример:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Sub Main()
 
    'Declare a variable as a FileDialog object.
    Dim fd As FileDialog
 
    'Create a FileDialog object as a File Picker dialog box.
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
 
    'Declare a variable to contain the path
    'of each selected item. Even though the path is aString,
    'the variable must be a Variant because For Each...Next
    'routines only work with Variants and Objects.
    Dim vrtSelectedItem As Variant
 
    'Use a With...End With block to reference the FileDialog object.
    With fd
 
        'Use the Show method to display the File Picker dialog box and return the user's action.
        'The user pressed the button.
        If .Show = -1 Then
 
            'Step through each string in the FileDialogSelectedItems collection.
            For Each vrtSelectedItem In .SelectedItems
 
                'vrtSelectedItem is aString that contains the path of each selected item.
                'You can use any file I/O functions that you want to work with this path.
                'This example displays the path in a message box.
                MsgBox "The path is: " & vrtSelectedItem
 
            Next vrtSelectedItem
        'The user pressed Cancel.
        Else
        End If
    End With
 
    'Set the object variable to Nothing.
    Set fd = Nothing
 
End Sub
При попытке запуска кода выдает ошибку 438, мол объект не поддерживает этот метод или свойство и ссылается на тот же самый FileDialog. Мне кажется что дело в библиотеках?
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
24.06.2011, 16:58
Обсидиан,
в интернете на английском языке пишут, что нет в Visio FileDialog - нужно через Microsoft Office вызывать это диалоговое окно.
0
18 / 18 / 0
Регистрация: 11.10.2010
Сообщений: 102
24.06.2011, 17:15  [ТС]
Ээээ, а это как? Если Office.FileDialog, то не фурычит.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
24.06.2011, 17:38
Код:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub P1()
'Чтобы было проще код писать (чтобы выскакивали подсказки после того
'как точку ставите) - подключите библиотеку Word:
'Tools - References... - Microsoft Word Object Library.
'Обращаться к программе Word будем через переменную Ворд.
Dim Ворд As New Word.Application
Ворд.Visible = True
'Собственно работа с диалоговым окном
With Ворд.FileDialog(msoFileDialogFilePicker)
    .Show
    Debug.Print .SelectedItems(1)
End With
'Закрываем программу Word.
Ворд.Quit
'Не знаю, зачем, ну и это действие сделаем.
Set Ворд = Nothing
'Здесь дальше код.
End Sub


Чтобы увидеть результат кода: View - Immediate Window.

Ещё советуют использовать функции API. Посмотрите в интернете, как можно с помощью функции API вызывать диалоговое окно Открыть. Тогда программа Word не будет запускаться.
1
18 / 18 / 0
Регистрация: 11.10.2010
Сообщений: 102
24.06.2011, 19:12  [ТС]
Ха-ха!!! Клево!!! 5+
Использовать другое приложение для открытия диалога!!! Спецы из MS хрен до такого додумаются
Спасибо огромное! Ну а про API, посмотрю на досуге, если разберусь, обязательно выложу.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
24.06.2011, 19:16
Цитата Сообщение от Обсидиан Посмотреть сообщение
Спецы из MS хрен до такого додумаются
да я вообще-то взял информацию с форума на английском языке (сам бы я не додумался).
0
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,283
25.06.2011, 08:21
Цитата Сообщение от Busine2009 Посмотреть сообщение
'Не знаю, зачем, ну и это действие сделаем.
Set Ворд = Nothing
'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
не уверен, что нижеприведённое
Цитата Сообщение от Busine2009 Посмотреть сообщение
'Закрываем программу Word.
Ворд.Quit
'Не знаю, зачем, ну и это действие сделаем.
Set Ворд = Nothing
в таком порядке, возможно нужно поменять местами
0
18 / 18 / 0
Регистрация: 11.10.2010
Сообщений: 102
25.06.2011, 20:03  [ТС]
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
'в таком порядке, возможно нужно поменять местами
Ну, кстати, так и этак работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.06.2011, 20:03
Помогаю со студенческими работами здесь

FileDialog.exec
Добрый день! Перехожу с билдера на qt, ищу замену FileDialog.Execute(), с exec() все работает как нужно, но он отображает диалог сам, как...

FileDialog в Android
как открыть диалог с помощью(путь директории) для Android?

Свойства RichEdit и FileDialog
Доброго времени суток, уважаемые форумчане! Возникла небольшая проблемка: имеется RichEdit, который связан с двумя FileDialog-ами. При...

Создание своего FileDialog
Товарищи! Я создаю свой FileDialog от QFileDialog (хочу добавить туда чекбокс) Но по какой-то причине стопорюсь в самом начале: есть...

FileDialog с выбором файла
Нужно вернуть название файла, выбранного в диалоге выбора файла... import javax.swing.*; import java.awt.*; import...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru