Страницы: 1
RSS
Вставка изображения на другой лист (скрытый)
 
Добрый день, планетяне!  
 
Задача у меня такая - в рабочую книгу вставлять отсканированные документы при вставке значений на листе, чтоб их потом можно было увидеть при даблклике по ячейке. Ну тут я частично сам решу, вопрос вот в чем - а вот куда сканы складывать? У меня мысль такая - создать один скрытый лист, куда помещать сканы все. Так возможно в принципе? Или каждый скан на отдельный лист надо?  
Ну а при наведении на ячейку с проставленным значением вызывать процедуру отображения рисунка - где-то видел на форуме, но тут второй вопрос - как связать конкретную ячейку и конкретный рисунок?  
 
Вот нашел код вставки изображений на лист, что в нем доработать надо, чтоб вставка була не на текущий лист, а на определенный другой (скрытый)?  
Sub InsertPicture()  
Dim FD As FileDialog  
Dim iFileName As String  
     
   Set FD = Application.FileDialog(msoFileDialogFilePicker)  
   With FD  
       .Filters.Clear  
       .Filters.Add "Все рисунки", "*.*"  
       .Filters.Add "JPG", "*.jpg"  
       .Filters.Add "Рисунки", "*.bmp"  
       .Filters.Add "PNG", "*.png"  
       .Filters.Add "tif", "*.tif"  
       .FilterIndex = 2  
       .AllowMultiSelect = False  
       .InitialFileName = ThisWorkbook.Path  
       .Title = "Добавление рисунка"  
       .ButtonName = "Вставить"  
       If .Show = False Then  
           'MsgBox "Вы не указали нужный файл!", 48, "Ошибка"  
           Exit Sub  
       Else  
           iFileName = Right(.SelectedItems(1), Len(.SelectedItems(1)) - InStrRev(.SelectedItems(1), "\"))  
           If Right(UCase(iFileName), 4) = ".XLS" Then iFileName = Left(iFileName, Len(iFileName) - 4)  
       End If  
   End With  
   Set FD = Nothing  
   ActiveSheet.Pictures.Insert(iFileName).Select  
End Sub  
 
Вообщем, прошу помощи зала (планеты)!
 
{quote}{login=CTR}{date=29.01.2012 06:11}{thema=Вставка изображения на другой лист (скрытый)}{post}... У меня мысль такая - создать один скрытый лист, куда помещать сканы все. Так возможно в принципе? Или каждый скан на отдельный лист надо?..{/post}{/quote}  
Лучше-е-е будет так, имхо: 1 папка, а в ней XL-файл и папка со сканами... Как вариант, разумеется... ;)  
-58336-
 
и через 2 дня работы ваш файл Excel будет весить 100мб, а через неделю 1000мб  
и открываться он будет 2 часа.  
 
В Excel - никогда не хранят картинки, в том плане, что можно засунуть на лист 100 маленьких картинок, но вот хранить отсканированные документы там точно не хранят.  
Вам нужно сделать так - хранить в Excel, например, ссылки на картинки, а сами картинки где-нибудь на сервере или в любой другой папке на компьютере. А при нажатии на ссылку - уже открывается картинка (хранящаяся в папке на сервере/компе), но не в самом Excel.
 
Нет, не все так плохо, сканов будет от силы 20 за неделю, посмотрели быстренько, и удалили, они уже не нужны.  
Смысл в чем - есть 16 филиалов, каждую неделю они присылают файл по мылу, из него собирается общий, но чтобы их можно было контролировать, заставляем их прикладывать кой какие подтверждающие документы. А если они их будут слать отдельно от файла - попробуй потом разберись, где чей? Имена-то и совпасть могут.
 
Каждый филиал пусть шлёт свою папку (запакованную), где будет основной файл и файлы-рисунки. Тогда одинаковые имена не страшны - макрос будет искать картинки в "своей" папке.
 
{quote}{login=Юрий М}{date=29.01.2012 08:45}{thema=}{post}Каждый филиал пусть шлёт свою папку (запакованную), где будет основной файл и файлы-рисунки. Тогда одинаковые имена не страшны - макрос будет искать картинки в "своей" папке.{/post}{/quote}  
 
Вариант, конечно.. Только придется раскидывать файлы вручную - xls в одну общую папку (для сбора в один), а остальные в подпапки.. Ну ладно, а как макрос-то сделать, чтобы ячейка (кстати, не фиксированная, могут после привязки добавляться строки) ссылалась на этот файл? И еще - как запретить ввод значения в эту ячейку без привязки файла? Лист уже конечно защищен, ввод и так только из макроса.
 
Зачем раскидывать - теряется смысл. Всё в одну папку.
 
Лучше все картинки складывать на рабочий лист, но видимым делать только один.  
Что касается размера - скан страницы обычного документа А4 в монохромном png c разрешением 200х200 занимает не более 100 кб, и при этом хорошо читается.  
Так что файл с 20 картинками будет весить не более ~5 МБ. Можно попробовать.
 
А с макросом-то поможет кто? А то тема превратилась в обсуждение куда вставлять, хотя я не об этом спрашивал. Попробовал бы сделать и так и так..
 
А это кто спрашивал?  
{quote}{login=CTR}{date=29.01.2012 06:11}{thema=Вставка изображения на другой лист (скрытый)}{post}...чтоб их потом можно было увидеть при даблклике по ячейке. Ну тут я частично сам решу, вопрос вот в чем - а вот куда сканы складывать? {/post}{/quote}
 
Сорри, был такой вопрос, но уже актуальнее второй - как связывать ячейки с рисунком (или файлом) макросом, и как вызывать эти рисунки потом опять же макросом?
 
Совсем недавно Ластик (Павел) делал макрос по загрузке картинок из интернета. Поищите - должно подойти. У меня тоже есть файл, где на форме отображается выбранная из списка картинка, но его размер больше допустимого. Могу сбросить на почту.
 
{quote}{login=CTR}{date=30.01.2012 11:15}{thema=}{post}...но уже актуальнее второй - как связывать ячейки с рисунком (или файлом) макросом...{/post}{/quote} На востоке говорят "Дорогу осилит идущий". Не топчитесь на месте, идите в поиск. Сюда? например, - http://www.planetaexcel.ru/tip.php?aid=40, или - http://www.planetaexcel.ru/tip.php?aid=40, или... Только внимательно и ... до конца читая и вникая... ;)
 
Юрий М, мыло rerz list. ru  
Z сэнкс за наводку, поиском я этого не нашел, теперь буду разбираться. А ссылки мне дали одинаковые, наверное по ошибке, есть еще варианты?
 
Да на соседней странице тема - чего её искать? http://www.planetaexcel.ru/forum.php?thread_id=37029 Попробуйте сначала с тем файлом разобраться - принцип одинаковый.
 
{quote}{login=CTR}{date=30.01.2012 12:11}{thema=}{post}... А ссылки мне дали одинаковые...{/post}{/quote} Виноват-с, прошу - http://excelvba.ru/code/InsertPicturesEx, впрочем она есть в конце первой, если досмотрели её, как просил, до конца... ;) -28867-
 
{quote}, впрочем она есть в конце первой, если досмотрели её, как просил, до конца...{/quote}  
 
Так я же сначала прочитал сообщение, взглянул на ссылку, поблагодарил, а потом уж читать полез)
 
Вот посмотрел все.  
{quote}{login=Z}{date=30.01.2012 12:43}http://excelvba.ru/code/InsertPicturesEx, {/post}{/quote}  
Тема интересная, но код запаролен, воспользоваться не удастся, надстройка мне не годится...    
Тут http://www.planetaexcel.ru/tip.php?aid=40  - вставка в примечания, очень интересная, но нету макроса, а в обсуждении идет речь о вставке в ячейку, мне это тоже не годится, так как в самой ячейке должно быть именно значение, оно потом идет в сводный отчет.  
http://www.planetaexcel.ru/forum.php?thread_id=37029 - ну а этот вариант как-то вообще не могу понять, как можно применить. Там уже прописаны связи ячеек с файлами, а мне как раз и надо макрос, который их будет связывать, и потом уже вызывать.
 
По указанной ссылке рисунки сначала попадают на диск, а уже потом отображаются.
Страницы: 1
Читают тему
Наверх