Всем добрый день. В связи с тем что моя предыдущая проблема с картинками в примечании не нашла своего решения, решил менять подход к этому вопросы, а именно отказа картинок в примечании, но для этого требуется макрос, прошу знатаков макросов помочь написанием кода. Суть такая: Нужно чтоб при вводе значения в столбец примечание создавался новый лист с этим именем как и введенное значение, а само значение преобразовалось в гиперссылку на созданный лист (например в B2 ввели 1 и сразу создаётся лист подписанный как 1, значение становится гиперссылкой, после этого открывается сразу окно "Вставка - Рисунок" и картинка должна вставиться именно на этот лист), при вводе следующего значения история повторяется. Также было бы удобно чтоб при удалении значения со столбца примечание, удалялся и лист с этим же именем. Но данное действие должно касаться только определённого столбца - в данной ситуации столбец B.
Всем добрый день. В связи с тем что моя предыдущая проблема с картинками в примечании не нашла своего решения, решил менять подход к этому вопросы, а именно отказа картинок в примечании, но для этого требуется макрос, прошу знатаков макросов помочь написанием кода. Суть такая: Нужно чтоб при вводе значения в столбец примечание создавался новый лист с этим именем как и введенное значение, а само значение преобразовалось в гиперссылку на созданный лист (например в B2 ввели 1 и сразу создаётся лист подписанный как 1, значение становится гиперссылкой, после этого открывается сразу окно "Вставка - Рисунок" и картинка должна вставиться именно на этот лист), при вводе следующего значения история повторяется. Также было бы удобно чтоб при удалении значения со столбца примечание, удалялся и лист с этим же именем. Но данное действие должно касаться только определённого столбца - в данной ситуации столбец B.DJ_Marker_MC
За вчера добился вот такого результата, но это не совсем то, к чему стремлюсь. Сейчас у меня работает так, проставляю в столбик b нужные названия листов, после этого нажимаю на кнопку и создаются листы при этом сразу каждый из них выдает окно для выбора картинки. При чем перед этим если есть лишние листы они удаляются и создаются новые, но мне нужно чтоб не после полного заполнения это происходило, а при вводе значения в ячейку. А также стало интересно как в этом что у меня уже есть, сделать так чтоб не выбирать для каждого листа картинку, а сделать так: ложим файл в одну папку с картинками которые подписаны также как требуемые для создания листа и когда идет выполнение макроса, то вставляются картинки одноименные с создаваемые с листами с текущей директории. И еще одно, как сделать чтоб значения в столбике b после создания листов превращались в гиперссыылки на них??? Заранее спасибо за помощь.
За вчера добился вот такого результата, но это не совсем то, к чему стремлюсь. Сейчас у меня работает так, проставляю в столбик b нужные названия листов, после этого нажимаю на кнопку и создаются листы при этом сразу каждый из них выдает окно для выбора картинки. При чем перед этим если есть лишние листы они удаляются и создаются новые, но мне нужно чтоб не после полного заполнения это происходило, а при вводе значения в ячейку. А также стало интересно как в этом что у меня уже есть, сделать так чтоб не выбирать для каждого листа картинку, а сделать так: ложим файл в одну папку с картинками которые подписаны также как требуемые для создания листа и когда идет выполнение макроса, то вставляются картинки одноименные с создаваемые с листами с текущей директории. И еще одно, как сделать чтоб значения в столбике b после создания листов превращались в гиперссыылки на них??? Заранее спасибо за помощь.DJ_Marker_MC
Ребята, я сделал практически все что хотел добиться. Листы создаются на основе данных столбца b и с такими же именами как значения, картинки вставляются автоматически в эти листы, не могу добиться лишь одного, чтоб в столбце b листа "пример", значения превратились в гиперссылки на созданные листы. Подскажите как сделать, реально не могу ни найти ни сделать.
тоесть есть два столбика - А, B - в А значения заполнены подряд все, в В стоят цифры 1,2,3 и т.д. - мне нужно чтоб в столбике В те ячейки которые не пустые превратились в гиперссылки на одноименные листы.
Ребята, я сделал практически все что хотел добиться. Листы создаются на основе данных столбца b и с такими же именами как значения, картинки вставляются автоматически в эти листы, не могу добиться лишь одного, чтоб в столбце b листа "пример", значения превратились в гиперссылки на созданные листы. Подскажите как сделать, реально не могу ни найти ни сделать.
тоесть есть два столбика - А, B - в А значения заполнены подряд все, в В стоят цифры 1,2,3 и т.д. - мне нужно чтоб в столбике В те ячейки которые не пустые превратились в гиперссылки на одноименные листы.DJ_Marker_MC
Serge_007 или это не то, или я не понял как пользоваться. Вот мой окончательный на данный момент вариант, не хватает только гипперсылок((( help me please
Serge_007 или это не то, или я не понял как пользоваться. Вот мой окончательный на данный момент вариант, не хватает только гипперсылок((( help me pleaseDJ_Marker_MC
For i = 1 To Range("A" & Rows.Count).End(xlUp).Row If Range("B" & i) <> "" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("B" & i), Address:="", SubAddress:= _ "'" & Range("B" & i).Value & "'!A1" Next i
[/vba] Посмотрел файл. Немного переделал Еще переделал и довложил файл
Где-то так примерно [vba]
Код
For i = 1 To Range("A" & Rows.Count).End(xlUp).Row If Range("B" & i) <> "" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("B" & i), Address:="", SubAddress:= _ "'" & Range("B" & i).Value & "'!A1" Next i
[/vba] Посмотрел файл. Немного переделал Еще переделал и довложил файл_Boroda_
_Boroda_, а файлик можно? спасибо Вам большое - хоть один полезный ответ. Попробовал Ваш код, практически то что нужно, но не нужно превращать в гиперссылку B2 и не нужно делать гипперссылки в пустых ячейках.
_Boroda_, а файлик можно? спасибо Вам большое - хоть один полезный ответ. Попробовал Ваш код, практически то что нужно, но не нужно превращать в гиперссылку B2 и не нужно делать гипперссылки в пустых ячейках.DJ_Marker_MC
Сообщение отредактировал marker_mc - Вторник, 22.01.2013, 18:11
ребята, хочу поднять эту тему вверх, поскольку с этим документом с которым задавал вопрос в этой теме и уже считал что всё закончено (так оно и было до применения на реальной ситуации), но к сожалению получил глюк... сам глюк описан тут http://www.planetaexcel.ru/forum....e379991 чтоб не создавать отдельную тему, задаю вопрос в своей же старой связанной с этим файлом.
если в столбик H проставить номерки... даже хотя бы 3 подряд в соседних ячейках: H4 = 1 H5 = 2 H6 = 3
то листы создаются только 1 и 3, а 2 пропускает и не создает его, если значений подряд будет еще больше, то все равно лист будет создан только для первого и последнего значения которые идут подряд, если же номера проставлять хотя бы через строку, то все работает.
чтоб посмотреть то что происходит нужно документ положить в папку и в папку положить 6 картинок (любых) jpg и дать им имена 1, 2, 3, 4, 5, 6 в Столбце H уже проставлены эти же номера подряд. По задумке должны создавать все 6 листов согласно тому что проставлено в столбце H но создается только 1 и 6, если значения ставить через ячейку друг от друга, то все срабатывает как положено... я уже весь день пытаюсь найти ответ, а ответа нигде нет(((
ребята, хочу поднять эту тему вверх, поскольку с этим документом с которым задавал вопрос в этой теме и уже считал что всё закончено (так оно и было до применения на реальной ситуации), но к сожалению получил глюк... сам глюк описан тут http://www.planetaexcel.ru/forum....e379991 чтоб не создавать отдельную тему, задаю вопрос в своей же старой связанной с этим файлом.
если в столбик H проставить номерки... даже хотя бы 3 подряд в соседних ячейках: H4 = 1 H5 = 2 H6 = 3
то листы создаются только 1 и 3, а 2 пропускает и не создает его, если значений подряд будет еще больше, то все равно лист будет создан только для первого и последнего значения которые идут подряд, если же номера проставлять хотя бы через строку, то все работает.
чтоб посмотреть то что происходит нужно документ положить в папку и в папку положить 6 картинок (любых) jpg и дать им имена 1, 2, 3, 4, 5, 6 в Столбце H уже проставлены эти же номера подряд. По задумке должны создавать все 6 листов согласно тому что проставлено в столбце H но создается только 1 и 6, если значения ставить через ячейку друг от друга, то все срабатывает как положено... я уже весь день пытаюсь найти ответ, а ответа нигде нет(((DJ_Marker_MC
напоминает ситуацию: прийти в гости, попить-покушать, прощаясь, сказать: "спасибо, хозяюшка, ладно хоть пирожки у тя вкусные оказались", а через недельку с честными глазами опять в гости прийти.[/offtop]
ps marker_mc, если вдруг что - не обращайте внимания. это я не вам написал.
[offtop]
Цитата (marker_mc)
хоть один полезный ответ
напоминает ситуацию: прийти в гости, попить-покушать, прощаясь, сказать: "спасибо, хозяюшка, ладно хоть пирожки у тя вкусные оказались", а через недельку с честными глазами опять в гости прийти.[/offtop]
ps marker_mc, если вдруг что - не обращайте внимания. это я не вам написал.ikki
помощь по Excel и VBA ikki@fxmail.ru, icq 592842413, skype alex.ikki
я не раз уже до этого прогонял... и понимаю что проблемма зарыта тут скорее всего:
[vba]
Код
nmr = sh.Cells(lb, 8).Value
[/vba]
а из этого вытекает, что возможно тут (что скорее всего):
[vba]
Код
lb = sh.[h2].End(xlDown).Row
[/vba]
но как ему указать что нужно брать значение каждой не пустой ячейки данного дипазона, для меня загадка... поскольку он берет не пустые, но только когда они не смежные более двух... если 3 подряд, то вторую уже пропускает
я не раз уже до этого прогонял... и понимаю что проблемма зарыта тут скорее всего:
[vba]
Код
nmr = sh.Cells(lb, 8).Value
[/vba]
а из этого вытекает, что возможно тут (что скорее всего):
[vba]
Код
lb = sh.[h2].End(xlDown).Row
[/vba]
но как ему указать что нужно брать значение каждой не пустой ячейки данного дипазона, для меня загадка... поскольку он берет не пустые, но только когда они не смежные более двух... если 3 подряд, то вторую уже пропускаетDJ_Marker_MC
Сообщение отредактировал marker_mc - Вторник, 05.02.2013, 23:08