Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / combox.vba / 14 сообщений из 14, страница 1 из 1
04.12.2015, 12:16
    #39120349
combox.vba
Здравствуйте. У меня такая проблема: имеется много textbox-ов, которые нужно будет вывести на рабочий лист екселя. Как можно автоматизировать этот процесс? Потому что каждый раз писать Имя=TextBox1.Text а потом присваивать ячейку (nextrow,1)=имя ....и так много раз -очень долго.

Модератор: Тема перенесена из форума "Работа".
...
Рейтинг: 0 / 0
04.12.2015, 13:40
    #39120502
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
ЕкатеринаКатя,
А почему тупо не экспортировать в Ёксель запрос?
...
Рейтинг: 0 / 0
04.12.2015, 13:45
    #39120509
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
ЕкатеринаКатя , экспорт таблицы, запроса, etc?
Примеров много. К примеру так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Dim xlApp As Object
Dim xlBook As Object
Dim xlSheet As Object
Dim rs As Object
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)
xlApp.Visible = True
xlApp.WindowState = -4137

Set rs = CurrentDb.OpenRecordset("t1") 't1-таблица/запрос. Или,с текущей формы: rs=Me.RecordsetClone
If Not rs.EOF Then 
rs.MoveLast: rs.MoveFirst
With xlSheet
     .Range("A1").CopyFromRecordset rs
End With
End If
...
Рейтинг: 0 / 0
04.12.2015, 13:49
    #39120519
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
...
Рейтинг: 0 / 0
04.12.2015, 19:48
    #39121016
combox.vba
Agapov_stas, не очень понимаю куда это вставлять и что из этого получится
...
Рейтинг: 0 / 0
04.12.2015, 20:39
    #39121044
combox.vba
Agapov_stas, у меня userform есть, там расположены эти textbox. При запуске userform я вписываю в textbox какие-то значения. В итоге, эти значения должны выводиться на рабочий лист
...
Рейтинг: 0 / 0
04.12.2015, 20:48
    #39121052
mds_world
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
ЕкатеринаКатя, похоже, что вы работаете только с Excel, без Access. Может быть топик перенести еще раз в в подфорум Microsoft Office или VBA? Дайте знать, я перенесу
...
Рейтинг: 0 / 0
04.12.2015, 21:03
    #39121057
combox.vba
mds_world, перенесите

Модератор: Тема перенесена из форума "Microsoft Access".
...
Рейтинг: 0 / 0
04.12.2015, 22:58
    #39121114
alex77755
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
В массив их!
И в цикле обработать
В принципе можно и без массива. Но всё рано в цикле

Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub CommandButton1_Click()
    Dim I
    For I = 1 To 8
        Me.Controls("TextBox" & I) = I
    Next I
End Sub


Адреса ячеек куда надо заносить данные из текстбоксов можно указать в Tag текстбокса
...
Рейтинг: 0 / 0
04.12.2015, 23:39
    #39121141
combox.vba
alex77755, У меня будет постоянно пополняющийся список, т.е. я следующую пустую строку определяю так: NextRow = Application.WorksheetFunction.CountA(Range("A:A")) + 1 и адреса ячеек тогда у меня будут выглядеть вот так :.Cells(NextRow, 2).Value = имя (в tag я так не напишу). Это тоже как-то циклом нужно сделать?
...
Рейтинг: 0 / 0
04.12.2015, 23:59
    #39121153
alex77755
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
Строку определить как первую пустую, а номер колонки можно записать в Tag
Если я правильно понял: все значения будут дописываться в одну строчку таблицы?
...
Рейтинг: 0 / 0
05.12.2015, 00:07
    #39121157
alex77755
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
combox.vba
Если правильно пронумеровать текстбоксы, то можно и без Tag обойтись

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub CommandButton2_Click()
        Dim lr, i
        lr = Cells(Rows.Count, 1).End(xlUp).Row + 1
        For i = 1 To 10
            Cells(lr, i) = Me.Controls("TextBox" & i)
        Next i
End Sub


Но если колонки не попорядку, то нужно будет применить другой метод перебора контролов или перехватывать ошибку и пропускать недостающие номера
...
Рейтинг: 0 / 0
05.12.2015, 18:19
    #39121417
combox.vba
alex77755, нет, каждый раз вызывая userfom значения будут писаться в другую строку
...
Рейтинг: 0 / 0
05.12.2015, 18:31
    #39121424
combox.vba
alex77755, вот пример моей одной записи
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / combox.vba / 14 сообщений из 14, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]