Страницы: 1
RSS
Из ListBox в TextBox, Как изменить макрос
 
Еще раз здравствуйте уважаемые форумчане! Задал этот вопрос в ранее начатой мной же теме http://planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=50502&MID=419812#message419812, но понял, что мой вопрос не имеет к ней уже никого отношения и решил идти согласно правил.
 Подскажите пожалуйста, как изменить макрос, чтоб в ТекстБокс добавлялись данные из ЛистБокса при разных позициях ТабСтрипа? Сейчас,после выбора на стр.1,допустим А1,А2 данные переносяться в ТекстБокс. Но при переходе на стр.2 и выборе, допустим Б3,Б4 в ТекстБоксе пишет лишь Б3,Б4.  :-( Нужно, чтоб данные со стр.1 не уничтожались при выборе со стр.2. Помогите ПЛЗ?
 
Прошу меня простить, за навязчевость. Подскажите, что делать?
 
Файл не смотрел (на работе 2003), но могу предложить формировать сначала строку, а потом уже её в TextBox. А Вы, скорее всего, ЗАНОВО заносите в TextBox значение. Попробуйте сцеплять уже имеющееся значение с новым.
P.S. Мы уже как-то обсуждали: как собираетесь считывать потом из TextBox в ячейки?
 
[/QUOTE]
Цитата
как собираетесь считывать потом из TextBox в ячейки?
Буду вносить данные в ActiveCell По нажатию клавиши.
[QUOTE]но могу предложить формировать сначала строку, а потом уже её в TextBox.
Даже не догадываюсь о чем речь :-(
 
Но ведь перенесёте из TextBox в ячейку всё, а не часть))
По поводу строки: создайте строковую переменную, например, iText. "после выбора на стр.1,допустим А1,А2" напишем iText = то, что у Вас заносилось в TextBox. Затем "при переходе на стр.2 и выборе, допустим Б3,Б4" напишем: iText = iText & второе значение. А уже в конце всё это в TextBox: TextBox=iText
 
Получаеться, что я временно сохраню все выбраные мною данные в iText, а уж потом выведу в ТекстБокс?
 
Всё верно. Но можно и сразу в TextBox "накапливать" по аналогии. Только, наверное, нужно будет добавить разделитель какой-нибудь. Например, пробел или перенос строки...
 
Если бы вы, Ronin751, просто сохранили файл в формате xls, то обошлось бы и без предположений Юрия, и решение пришло бы быстрее.
Простое накопление здесь решение не дает. Самый оптимальный, ИМХО, выход в данной ситуации это просто создать второй LIstBox для второй закладки. См. вложение
Учимся сами и помогаем другим...
 
Цитата
Всё верно. Но можно и сразу в TextBox "накапливать" по аналогии. Только, наверное, нужно будет добавить разделитель какой-нибудь. Например, пробел или перенос строки...
Прошу меня простить за то,что сразу не поблагодарил. На всем микрорйоне свет отключили. Спасибо Вам Юрий за подсказку! Буду грызть.
Цитата
просто создать второй LIstBox для второй закладки.
Но ведь это только ради примера. Реально вкладок будет больше. Если вкладок 25 то и ЛистБоксов 25? P.S.Часто замечал,что вы употребляете "ИМХО".Прогуглил (от не понимания значения). Теперь на одно слово умнее стал. Спасибо Вам!
 Подскажите пожалуйста,на будущее... Так в каком же формате лучше кидать файл?
 
Не понимаю - почему Вы так полюбили TextBox  в качестве накопителя. Я Вам в своё время предлагал вариант с использованием для этих целей ListBox. И по ячейкам потом легче разбрасывать...
 
ТекстБокс - потому что он позволяет редактировать выбраные данные. А из текстБокса они все перейдут в одну ячейку. Так того требует нормативная документация, по ведению журнала.Вот,как то так и решил остановиться на ТекстБоксе.
 
Цитата
Реально вкладок будет больше...
а сразу об этом сказать?

Цитата
Так в каком же формате лучше кидать файл?
моя фраза про формат файла говорила только о том, Юрий мог бы помочь Вам сразу, если бы Вы поменяли его на 2003ий.

в общем выкладываю универсальный вариант на любое количество вкладок
Учимся сами и помогаем другим...
 
Чёт пуст ЛистБокс))
 
Забыл с прошлого примера удалить ListBox2  :D он перекрывал первый listbox
Учимся сами и помогаем другим...
 
Работает! :-D Спасибо огромное!!! Консультации ради: скажите,что означают эти символы "i%, j%"?
 
i% = i as Integer
Учимся сами и помогаем другим...
 
Спасибо Вам огромное за помощь!!!!
 
Цитата
ТекстБокс - потому что он позволяет редактировать выбраные данные.
И что с того? Записали все значения в ЛистБокс. Если надо изменить - выделяется нужное значение в листбокс и выделенное значение помещается в ТекстБокс для редактирования. Отредактировали, нажали "Изменить"(или сразу во время изменения, но это плохая практика) и измененное значение попало обратно в Листбокс. Зачем себе проблемы-то выдумывать? Чтобы потом их пытаться преодолеть?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дим, я уже предлагал подобное, но автор сопротивляется))
 
Судя по тому,что Вы уже не первый кто мне об этом говорит - моя затея, вероятнее всего,действительно выглядет глупо. Но принцып её следующий: В ЛистБоксах отображаються варианты разных работ ,поделеные по групам для облегчения визуального выбора(для этого и нужны вкладки).Но так как почти к каждой выбраной работе нужно добавлять свои данные,переношу их в ТекстБокс (где и редактирую).После все данные переносятся в таблицу.Вот и весь не хитрый замысел!
 
Так переносите в ТекстБокс (поочерёдно) только то, что нужно редактировать, как предлагает Дима. Зачем ВСЁ пихать в ТекстБокс?
 
Цитата
Так переносите в ТекстБокс (поочерёдно) только то, что нужно редактировать, как предлагает Дима. Зачем ВСЁ пихать в ТекстБокс?
ИМХО: Дело в том,что проще видеть общую картину и проводить в ней необходимые изменения. Чем поочередно изменять, а затем добавлять. Если я правильно понимаю то Вы говорите мне о варианте с ИнпутБокс (который когда то мне показывали)?

 Знаю, что это уже наглость с моей стороны :oops:  Подскажите пожалуйста, а как заставить ТабСтрип.Валюе отображать не "Таб1,Таб2..."), а данные первой ячейки каждого столбика?
 
дополните
Код
UserForm1.TabStrip1.Tabs.Add

так
Код
UserForm1.TabStrip1.Tabs.Add (Worksheets("Лист1").Cells(1, i))
Изменено: ber$erk - 05.09.2013 14:35:52
Учимся сами и помогаем другим...
 
Спасибо большое! И еще раз простите за наглость.
 
Ronin751, Вы неправильно поняли - перечитайте сообщение Дмитрия. Все данные собираете в ЛистБокс, клик по НУЖНОЙ строке - значение оказывается в неком ТекстБоксе. Там его редактируете и жмёте на кнопочку - оно "возвращается" в ЛистБокс уже откорректированном виде. Затем следующая строка... Вы ведь всё равно не можете редактировать СРАЗУ несколько значений, поэтому и написал - поочерёдно. А "общая картина" - она у Вас перед глазами - в ЛистБоксе.
Впрочем, дело Ваше...
 
Получается, что то вроде, как у Уокенбаха? В ЛистБокс1 выбераем и переносим в ЛистБокс2. Затем в листБокс2 выбераем нужную позицию (которая соотвецтвенно,одновременно, отображаеться в текстбокс1 (в котором,собственно и редактируем)).Возвращаем в ЛистБокс2 уже отредактированые данные. По окончанию изменений,переносим всё в ТекстБокс2 (или лучше сразу в таблицу). Надеюсь,я правильно понял?
 
Опять...)) ТекстБокс2 ЗАЧЕМ?!
 
Цитата
(или лучше сразу в таблицу)
Пока писал,сразу и передумывал.  :)
Страницы: 1
Наверх