Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 44

Использование textbox при активации листов (книг)

09.07.2014, 14:17. Показов 1700. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья, доброго времени суток!
Подскажите пожалуйста можно ли использовать textbox для активации книг, листов?
В моем случае в файле config-f.xlsx в листе Лист1 ячейки L2 находится наименование листа, с которым я планирую выполянть определенные действия.
Пример ниже:

Visual Basic
1
2
3
4
5
6
Windows("consum-f").Activate
 textbox1 = "[config-f.xlsx]Лист1'!$L$2"
            Sheets(textbox1).Select
    Sheets("textbox1").Copy After:=Workbooks("bill.xlsx").Sheets(5)
    Sheets("textbox1").Select
    Sheets("textbox1").Name = "consum"
Как видите я активирую файл consum-f, в котором находится вкалдка с название, которое прописано в ячейке файла "[config-f.xlsx]Лист1'!$L$2. После чего копирую вкладку в другую книгу (которая тоже кстати говоря открыта) и перерименовываю эту вкладку уже в новое имя - consum.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.07.2014, 14:17
Ответы с готовыми решениями:

Автоматическое переключение на русский язык при активации textbox
Добрый день! Как сделать, чтобы когда пользователь устанавливал курсор на textbox1, раскладка для этого окна автоматически...

Как при активации comboBox, его содержимое вписать в textBox?
Добрый вечер! Подскажите пожалуйста, как при активации comboBox, его содержимое вписать в textBox ? А при изменении элемента перезаписать...

Предлагаемый вариант текста в TextBox должен исчезать при его активации
Здравствуйте! Часто вижу (в основном на сайтах при регистрации) что в полях, которые надо заполнять, находится текст (обычно серый и...

3
 Аватар для KoGG
5645 / 1627 / 418
Регистрация: 23.12.2010
Сообщений: 2,448
Записей в блоге: 1
09.07.2014, 17:20
Visual Basic
1
textbox1 = Evaluate("[config-f.xlsx]Лист1!$L$2")
0
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 44
09.07.2014, 17:44  [ТС]
KoGG, а среди переменных Dim ничего не прописывается? а то после пошаговой прокрутки кода он присваивает переменной textbox1 = Error 2015

Добавлено через 4 минуты
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Sub rt()
Dim a(), b(), c(), d(), t&, k&, u&, l&
       Dim shSheet_1 As Excel.Worksheet, shSheet_2 As Excel.Worksheet, consum As Excel.Worksheet
    Dim lStartSheet_1 As Long, lEndSheet_1 As Long, lEndconsum As Long
    Dim lLastRow As Long
    Dim i As Long
    Dim lastrow As Long
 
    
    
    Windows("config-f.xlsx").Activate
 textbox1 = Evaluate("[config-f.xlsx]Ëèñò1!$L$2")
    Windows("consum-f.xlsx").Activate
            Sheets(textbox1).Select
    Sheets("textbox1").Copy After:=Workbooks("bill.xlsx").Sheets(5)
    Sheets("textbox1").Select
    Sheets("textbox1").Name = "consum"
    
 With CreateObject("Scripting.Dictionary"): .CompareMode = 1
        c = [consum!a9].CurrentRegion.Value
        On Error Resume Next
        For l = 1 To UBound(c): .Item(c(l, 1)) = l: Next
        If Error Then MsgBox "ÂÍÈÌÀÍÈÅ! ÍÅ ÂÑÅÌ ÏÓ óäàëîñü ïðèñâîèòü ÒÀÐÈÔÈÊÀÖÈÞ! Íåîáõîäèìà äîðàáîòêà âðó÷íóþ!"
        ' On Error GoTo 0
        d = [shSheet_1!c12].CurrentRegion.Value
        For l = 12 To UBound(d)
            If .Exists(d(l, 3)) Then
                u = .Item(d(l, 3))
                d(l, 7) = c(u, 4): d(l, 13) = c(u, 5): d(l, 14) = c(u, 6): d(l, 15) = c(u, 7)
           Else
                d(l, 9) = vbEmpty: d(l, 9) = vbEmpty
            End If
        Next
[shSheet_1!b12].CurrentRegion.Value = d
    End With
    
End Sub
0
 Аватар для KoGG
5645 / 1627 / 418
Регистрация: 23.12.2010
Сообщений: 2,448
Записей в блоге: 1
10.07.2014, 16:27
Error 2015 будет если файл config-f.xlsx в момент работы закрыт. Из контекста следует что он открыт, так как путь к файлу не прописан.
Когда файл, из которого берем данные закрыт, надо использовать такую строку:
Visual Basic
1
textbox1=ExecuteExcel4Macro("'C:\temp\[config-f.xlsx]Лист1'!R2C12")
Добавлено через 9 минут
Еще возможно в файле config-f.xlsx нет листа с именем "Лист1"
В фрагменте
Visual Basic
1
2
3
    Sheets("textbox1").Copy After:=Workbooks("bill.xlsx").Sheets(5)
    Sheets("textbox1").Select
    Sheets("textbox1").Name = "consum"
не используется полученная нами переменная textbox1, используется символьная константа "textbox1"

Добавлено через 4 минуты
Если файл открыт, то танец с бубнами и не нужен:
Visual Basic
1
textbox1=Workbooks("config-f.xlsx").Sheets("Лист1").Range("L2")
Добавлено через 9 минут
При открытом файле вместо Evaluate возможна запись с двойными квадратными скобками:
Visual Basic
1
textbox1 = [[config-f.xlsx]Лист1!$L$2]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.07.2014, 16:27
Помогаю со студенческими работами здесь

Событие при активации textbox. Или событие при изменения фокуса
Здравствуйте. Подскажите можно ли создать свое событие происходящий вовремя активации textbox. Имеется ввиду создать свой класс...

Копирование диапазона из двух книг в одну (несколько листов)
Здравствуйте. Хочу попросить помощи в решении одной задачи в Excel 2010. Пытаюсь создать макрос, который бы подтягивал в книгу...

Как скопировать из закрытых книг с определенных листов нужные ячейки
Здравствуйте!!!!! Помогите ((( Есть более 10000 книг. Каждая книга содержит лист "Титул" и лист "Маршрутная...

использование ключа активации
Добрый день форумчане у меня такой вопрос по поводу активации. Есть нетбук Lenovo с предустановленной виндвс 7 home basic. Вопрос в том...

Определить, сколько можно купить тетрадей по 12 листов, по 48 листов и по 96 листов, зная цену
Определить, сколько можно купить тетрадей по 12 листов, по 48 листов и по 96 листов, если цена тетради с 96 листами 60 р., с 48 листами –...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru