Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2015, 08:33   #11
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

ChoiceFile - вернет полное имя файла или пустую строку (если ничего не выбрать)
имя файла получили - используйте как вам нужно
например
Код:
ActiveSheet.OLEObjects.Add(Filename := ChoiceFile, Link:=False, ....
[/QUOTE]

Егор, доброе утро. Подскажите еще такую вещь, при внедрении файла в имени значка прописывается путь на моем компьютере, но хотелось бы чтоб было именно имя файла. Это возможно?
Romario371 вне форума Ответить с цитированием
Старый 16.03.2015, 11:00   #12
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Function FileNameFromFullPath(p As String) As String
  FileNameFromFullPath = Right(p, Len(p) - InStrRev(p, Application.PathSeparator))
End Function

...
ActiveSheet.OLEObjects.Add(Filename := FileNameFromFullPath(ChoiceFile)
...
и... называйте меня Игорь, я за 50 лет к этому имени привык
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 16.03.2015 в 11:07.
IgorGO вне форума Ответить с цитированием
Старый 16.03.2015, 11:12   #13
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

и... называйте меня Игорь, я за 50 лет к этому имени привык[/QUOTE]

Я прошу прощения, первый свой ответ написал Игорь, посмотрел в других комментариях, там обращаются к Вам как к Егору, быстренько отредактировал.. А оказалось не правильно
Romario371 вне форума Ответить с цитированием
Старый 16.03.2015, 11:28   #14
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

IgorGO;1479988][CODE]Function FileNameFromFullPath(p As String) As String
FileNameFromFullPath = Right(p, Len(p) - InStrRev(p, Application.PathSeparator))
End Function


Все делаю как Вы говорите, а не получается все равно..((
пример во вложении
Вложения
Тип файла: zip Пример внедрения.zip (14.5 Кб, 6 просмотров)
Romario371 вне форума Ответить с цитированием
Старый 16.03.2015, 13:17   #15
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

Игорь, сможете помочь по сообщению выше?
Romario371 вне форума Ответить с цитированием
Старый 16.03.2015, 13:32   #16
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

у Вас
Код:
Sub Внедрение_документа()
'Макрос2 Макрос
ActiveSheet.OLEObjects.Add(Filename:=ChoiceFile, Link:=False, DisplayAsIcon _
:=True, IconFileName:= _
"C:\PROGRA~2\MICROS~1\Office14\WINWORD.EXE", IconIndex:=0, _
IconLabel:=ChoiceFile).Select
End Sub
я предлагал:
Код:
ActiveSheet.OLEObjects.Add(Filename := FileNameFromFullPath(ChoiceFile), ...
улавливаете разницу?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 16.03.2015, 13:52   #17
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

только заметил
там два раза ChoiceFile (выбор файла)
я вообще не знаю что Вы там внедряете или пытаетесь внедрить

до этого отвтил на два простых вопроса:
1. как выбрать файл
2. как из выброного полного имени файла отбросить путь к нему

Вам было преодложено 2 функции отвечающие на эти эти два вопроса
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 16.03.2015, 14:10   #18
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
только заметил
там два раза ChoiceFile (выбор файла)
я вообще не знаю что Вы там внедряете или пытаетесь внедрить

до этого отвтил на два простых вопроса:
1. как выбрать файл
2. как из выброного полного имени файла отбросить путь к нему

Вам было преодложено 2 функции отвечающие на эти эти два вопроса
там два раза ChoiceFile (выбор файла)

без второго ChoiceFile значок не принимает наименование файла, и приходится выбирать файл второй раз.
Т.е. первый раз я выбираю содержимое файла, а второй раз его наименование..
в этом и есть неудобство моего макроса (но оно не критично, основная идея выполнена)

с Код:

ActiveSheet.OLEObjects.Add(Filename := FileNameFromFullPath(ChoiceFile), ...

все получилось, спасибо))
Romario371 вне форума Ответить с цитированием
Старый 17.03.2015, 11:45   #19
Romario371
Пользователь
 
Аватар для Romario371
 
Регистрация: 12.03.2015
Сообщений: 15
По умолчанию

Игорь, здравствуйте! У меня новая проблема. При отказе выбора файла выскакивает окно

"Невозможно получить свойство Add класса OLEObject"

Можно ли прописать какую нибудь фразу чтоб при отказе просто скрывалось окно выбора файла?
Romario371 вне форума Ответить с цитированием
Старый 17.03.2015, 11:53   #20
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Sub Внедрение_документа()
'Макрос2 Макрос
dim fulnm as string, fn as string
fulnm = choicefile:  if fulnm = "" then exit sub
fn = FileNameFromFullPath(fulnm)
...
дальше в нужных используйте fulnm и fn там где они нужны
и мой Вам совет: бросайте это программирование куда по-дальше
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заливка цветом с выпадающим окном staniiislav Microsoft Office Excel 4 05.10.2011 12:48
Тип вывода OLE объекта: значек или содержимое gg9 Microsoft Office Access 1 17.09.2011 22:59
Scrolling Ole объекта Рик Компоненты Delphi 0 14.03.2011 12:19
Как узнать тип (класс) OLE Automation объекта? Stilet Win Api 2 02.07.2010 09:07
Прокрутка Ole объекта Gagens Общие вопросы Delphi 0 16.04.2010 10:39