Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
161 / 17 / 2
Регистрация: 14.07.2011
Сообщений: 74

Результат в третьей ячейке зависит от выбора в первых двух

04.09.2012, 16:19. Показов 1501. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, форум! Помогите разобраться в следующем затыке.
Создается новая книга.В этой книге пользователь выбирает в одной из ячейке значение, в другой может сам вносить или выбирать из предложенных. После этого в третей ячейке должно появиться значение в зависимости от выбора.

Как лучше реализовать? Возвожно ли программно добавить код vba на создаваемый лист? Если да то как?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.09.2012, 16:19
Ответы с готовыми решениями:

Чередование символов в третьей строке из первых двух
Даны 2 строки символов.Сформировать 'из них третью в котрой символы из первых 2х чередуются. 'Если одна из строк...

SQLITE. Формирование третьей таблицы на основе первых двух
Здравствуйте. Возникла задача в формировании таблицы следующим образом: Есть две таблицы с временем и данными. На основе этих двух таблиц...

В третьей форме получить текст из двух первых без повторений
Есть 3 формы для ввода текста как в блокноте (забыл название компонента) В первой форме я загружаю текст например: имена 250 шт. Во...

6
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
04.09.2012, 16:51
Цитата Сообщение от matresh Посмотреть сообщение
Возвожно ли программно добавить код vba на создаваемый лист? Если да то как?
Удобно хранить шаблон создаваемого листа как скрытый лист в книге с макросом. Код содержится в модуле листа. Для создания книги сделать лист видимым, .Copy, снова скрыть.

Цитата Сообщение от matresh Посмотреть сообщение
пользователь выбирает в одной из ячейке значение, в другой может сам вносить или выбирать из предложенных. После этого в третей ячейке должно появиться значение в зависимости от выбора
Это можно сделать и с помощью Проверки данных + формулы.
0
161 / 17 / 2
Регистрация: 14.07.2011
Сообщений: 74
04.09.2012, 17:24  [ТС]
Спасибо за консультацию, но меня все же интересует как программно можно добавить код!
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
04.09.2012, 17:56
ОК, изучайте: http://www.cpearson.com/excel/vbe.aspx
1
161 / 17 / 2
Регистрация: 14.07.2011
Сообщений: 74
04.09.2012, 21:30  [ТС]
Спаисбо, очень полезная ссылка

Добавлено через 3 часа 10 минут
Казанский, не подскажешь такой момент....
Есть код
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub Lam(wb As Workbook)
Code = "Private Sub Worksheet_Change(ByVal target As Range)" & vbCrLf
Code = Code & " 12" & vbCrLf
Code = Code & "End Sub"
 
With wb.VBProject.VBComponents("Лист1").CodeModule
    NextLine = .CountOfLines + 1
    .InsertLines NextLine, Code
End With
 
End Sub
Данный код как раз и добавляет на лист1 тот код который необходим. Но есть одна проблема после закрытия книги код не сохраняется. Пробовал сохранять в разных форматах не помагло. Как ты думаешь в чем проблема?
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
04.09.2012, 23:33
Попробовал закрывать и открывать новую книгу - работает (xl2000):
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
Sub Lam(wb As Workbook)
Code = "Private Sub Worksheet_Change(ByVal target As Range)" & vbCrLf & _
    " 12 msgbox target.address" & vbCrLf & _
    "End Sub"
 
With wb.VBProject.VBComponents("Лист1").CodeModule
    NextLine = .CountOfLines + 1
    .InsertLines NextLine, Code
End With
 
End Sub
 
Sub test()
Dim wb As Workbook
Set wb = Workbooks.Add
Lam wb
p = Environ("temp") & Format(Now, "\\yyyymmddhhmms.""xls""")
wb.Close True, p
 
Set wb = Nothing
Workbooks.Open p
 
End Sub
Насчет антивируса предупреждение видели?
0
1302 / 404 / 22
Регистрация: 21.10.2011
Сообщений: 1,285
05.09.2012, 18:55
matresh, если новая книга должна что-то содержать, то нужно создавать новую книгу на основе нужного шаблона. Для этого и существуют шаблоны, чтобы сразу создавать новые книги с нужными данными.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.09.2012, 18:55
Помогаю со студенческими работами здесь

Определить равна ли сумма первых двух цифр числа третьей его цифре
bool ifaplusbC(int x) { int a,b,c; a=x/100; b=x%100; b=x/10; c=x%10; if(c==a+b) return true; else

Анализ первых двух цифр числа в ячейке
Вопрос: у меня столбец с заданными номерами банковских счетов! Кол-во чисел в номере счета различное, но есть всего три варианта: либо...

Сделать расчет первых двух столбцов в DGV и записать результат в третий
Доброго времени суток, уважаемые форумчане! Такая проблема. Есть к примеру три столбца DGV. Нужно сделать расчет, допустим сложение,...

Div и mod. Сумма двух первых цифр числа равна произведению двух первых
Составит линейную логическую программу, печатающую значение 1, если указанное высказывание является истинным, и 0 – в противном случае:...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru