powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Данные из Combobox в ячейку Excel
25 сообщений из 33, страница 1 из 2
Данные из Combobox в ячейку Excel
    #33394029
Ekonomova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как вставить данные из выбранной строки Comboboxa в ячейку???
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #33394083
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub UserForm_Initialize()
    Me.cboData.AddItem "Data1"
    Me.cboData.AddItem "Data2"
    Me.cboData.AddItem "Data3"
End Sub

Private Sub cboData_AfterUpdate()
    Range("A1") = Me.cboData.Value
End Sub
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #33394119
Ekonomova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если честно я не очень сильна в программировании
Расшифруйте Ваш код если можно.
У меня есть список на листе2 и Combobox с данными этого списка на Листе1.
Мне надо чтобы данные попали в ячейку А13(например). В коде сейчас

Private Sub ComboBox1_Change()

End Sub

Извиняюсь на тупые вопросы, но учиться-то как-то надо!
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #33394164
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это код для заполнения ComboBoxa при окрытии
ComboBox1.AddItem "Data1"
ComboBox1.AddItem "Data2"
ComboBox1.AddItem "Data3"
---------------------------------------

Private Sub ComboBox1_Change()
Range("A13") = ComboBox1.Text
End Sub
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #33394205
Ekonomova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Данные из Combobox в ячейку Excel
    #34308696
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
У меня подобная проблема, но в ячейку надо сбросить номер выбранной строки Comboboxa.
бьюсь несколько дней.
Если не сложно, подскажите, пожалуйста.
С уважением, Александр
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34308743
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Private Sub ComboBox1_Change()
Range("A13") = ComboBox1.Listindex
End Sub
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34310137
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо.
На следующем шаге - новая проблема.
На листе1 - 2 Комбобокса. База - на листе2. В строках таблицы написаны данные по поставщику: название, услуга, адрес и т.д.

Как сделать, чтобы при выборе в первом Комбобоксе нужного поставщика автоматически перелистнулись данные во втором комбобоксе на его услугу. И аналогично, при выборе во втором услуги перелистнулись данные в первом на нужное название поставщика.
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34310976
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если у одного поставщика имеется 1 услуга то примерно так(а если у одного поставщика несколько услуг то будет сложнее)
Private Sub Combo1_change() ' я точно не помню событие Change() или событие Click()
combo2.listindex=combo1.listindex
End Sub
Private Sub Combo2_change()
combo1.listindex=combo2.listindex
End Sub

P.S.:Это будет работать если индекс поставщика совпадает с индексом его услуги (так что когда забиваешь combobox следи чтобы они совпадали.)
Я не уверен что это будет работать но попробуй. Удачи...
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34311209
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, не работает.
А так правильно: у одного поставщика - одна услуга. И наоборот.
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34311231
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
oxcom
я точно не помню событие Change() или событие Click()


Private Sub Combo1_Click()
combo2.listindex=combo1.listindex
End Sub
Private Sub Combo2_Click()
combo1.listindex=combo2.listindex
End Sub

так попробуй должно работать.
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34313416
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё равно не работает.
Очень упрямая команда:)
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34314547
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
какая ошибка?
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34316454
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот в этих строках:
combo2.listindex=combo1.listindex

combo1.listindex=combo2.listindex



Может проще будет, если вы создадите файл xls.
На листе2 в столбце А - 1,2,3,4,5 в столбце B - а,б,в,г,д
На листе1 - 2 комбобокса: в одном цифры, а в другом буквы.

Выбираю из цифр, например, 3 в первом комбобоксе, а второй перелистывается на "в"
Выбираю из букв "д" во втором, а первый перелистывается на - 5
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34317763
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Private Sub UserForm_Initialize()
Лист1.ComboBox1.Clear
Лист1.ComboBox2.Clear
    Лист1.ComboBox1.AddItem (Лист2.Range("A1"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A2"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A3"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A4"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A5"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B1"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B2"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B3"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B4"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B5"))
End Sub
Private Sub Combobox1_Click()
ComboBox2.ListIndex = ComboBox1.ListIndex
End Sub
Private Sub Combobox2_Click()
ComboBox1.ListIndex = ComboBox2.ListIndex
End Sub
[quot автор]
ComboBox1.ListIndex
стери ".ListIndex" потом поставь "точку" после "ComboBox1" и вручную из списка найди "ListIndex"
а то она так не работает, и так для всех
[/quot]
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34317922
Balexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СПАСИБО!!!!
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34318156
oxcom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вместо этого:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
    Лист1.ComboBox1.AddItem (Лист2.Range("A1"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A2"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A3"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A4"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A5"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B1"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B2"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B3"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B4"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B5"))
можешь написать это:
Код: plaintext
1.
2.
3.
4.
For i =  1  To  5 
    Лист1.ComboBox1.AddItem (Лист2.Range("A" & i & ""))
    Лист1.ComboBox2.AddItem (Лист2.Range("B" & i & ""))
Next
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34988629
Dominik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую всех. Помогите с таким заданием. Имеется форма UserForm1 , на которой расположены ComboBox1 ComboBox2 ComboBox3 , кнопка CommandButton1 .

Суть задания в следующем:

1. как макросом запустить эту форму
2. как в поля ComboBox2, 3 внести фиксированный набор значений (не используя данные с листа)
3. как потом при выборе данных из полей ComboBox 2,3 , по нажатию кнопки CommandButton1 , поместить их в ячейки Excel (например B1, B2, B3)
И последнее, из разряда невозможного. Реально ли, чтобы напрмер, в ComboBox1 считывалось содержимое какого-либо каталога на диске ( список файлов, которые в каталоге находятся), чтобы выбрал конкретный файл в ComboBox1 и потом имя файла переносится в ячейку Excel?
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34989341
кладовщик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DominikПриветствую всех. Помогите с таким заданием. Имеется форма UserForm1 , на которой расположены ComboBox1 ComboBox2 ComboBox3 , кнопка CommandButton1 .

Суть задания в следующем:

1. как макросом запустить эту форму
2. как в поля ComboBox2, 3 внести фиксированный набор значений (не используя данные с листа)
3. как потом при выборе данных из полей ComboBox 2,3 , по нажатию кнопки CommandButton1 , поместить их в ячейки Excel (например B1, B2, B3)
И последнее, из разряда невозможного. Реально ли, чтобы напрмер, в ComboBox1 считывалось содержимое какого-либо каталога на диске ( список файлов, которые в каталоге находятся), чтобы выбрал конкретный файл в ComboBox1 и потом имя файла переносится в ячейку Excel?
Помогаю в 1-ю очередь ценным советом: возьмите в руки любую книгу по VBA в Экселе - там такие задачи написаны как учебные примеры.
Dominik
1. как макросом запустить эту форму

Код: plaintext
1.
2.
Sub DominikMacros1
UserForm1.Show
End Sub
Dominik
2. как в поля ComboBox2, 3 внести фиксированный набор значений (не используя данные с листа)
3. как потом при выборе данных из полей ComboBox 2,3 , по нажатию кнопки CommandButton1 , поместить их в ячейки Excel (например B1, B2, B3)

Читайте тему "Данные из Combobox в ячейку Excel"
Dominik
И последнее, из разряда невозможного. Реально ли, чтобы напрмер, в ComboBox1 считывалось содержимое какого-либо каталога на диске ( список файлов, которые в каталоге находятся), чтобы выбрал конкретный файл в ComboBox1 и потом имя файла переносится в ячейку Excel?
Реально.
По поводу "чтобы выбрал конкретный файл в ComboBox1 и потом имя файла переносится в ячейку Excel" читайте тему "Данные из Combobox в ячейку Excel".
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34996871
Dominik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как все гениальное, все оказалось очень просто. Но старый вопрос остался - как получить содержимое каталога с подпапками? Книги в сельской местности достать не очень просто, а Интернет не настолько быстрый и не всегда...
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34996972
кладовщик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DominikКак все гениальное, все оказалось очень просто. Но старый вопрос остался - как получить содержимое каталога с подпапками? Книги в сельской местности достать не очень просто, а Интернет не настолько быстрый и не всегда...
Код рабочий, но некрасивый - правьте сами. Просто тупо справку по Объекту FileSystemObject скопировал.
Вот тока не спрашивайте, как этот список засунуть не на лист книги, а в комбобокс или еще куда

Код: plaintext
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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
Sub DominikGetFilesAndDirsList()
'Выдаем список всех папок и файлов, кот-е находятся в папке C:\DownLoads\ на активный лист
'В каждой строке листа - название папки или файла
Cells.Clear
folderlist ("C:\DownLoads\")
End Sub

' Получение списка файлов для заданной папки
Function ShowFileList(folderspec)
 Dim fso, fld, f1, fc, s
  Set fso = CreateObject("Scripting.FileSystemObject")
 Set fld = fso.GetFolder(folderspec)
 Set fc = fld.Files
  Dim Row As Long
  Row = Range("A1").CurrentRegion.Rows.Count
  For Each f1 In fc
  Row = Row +  1 
        Cells(Row,  1 ) = f1.Name
    Next
' ShowFileList = s
  
End Function

'Делаем все дела
Sub folderlist(folderspec)
' Опять застараховываем себя
' от непредвиденных ошибок
On Error Resume Next
' Объявляем переменные
Dim f, f1, sf
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
' Получаем объект Folder
Set f = fso.GetFolder(folderspec)
    Dim Row As Long
Row = Range("A1").CurrentRegion.Rows.Count +  1 
MsgBox f.Path
Cells(Row,  2 ) = f.Path
    ShowFileList (f.Path)
' Получаем объект SubFolders
Set sf = f.SubFolders
' И наконец, организуя цикл,
'просматриваем папки
For Each f1 In sf
    ShowFileList (f1.Path)
' Как только находим первую папку,
' то сразу ее открываем, т.е. опять входим
' в подпрограмму и так до тех пор,
' пока не будет просмотренны все вложенные папки
' первой найденной....и так со всеми папками

folderlist (f1.Path)
Next
End Sub
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34996979
кладовщик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тчорт, не совсем рабочий код. Думать неохота - читайте сами про FileSystemObject.
Или солюшнов гуру ждите.
Или читайте про функцию Dir.
Вон че в справке пишут:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
' Display the names in C:\ that represent directories.
MyPath = "c:\"    ' Set the path.
MyName = Dir(MyPath, vbDirectory)    ' Retrieve the first entry.
Do While MyName <> ""    ' Start the loop.
    ' Ignore the current directory and the encompassing directory.
    If MyName <> "." And MyName <> ".." Then
        ' Use bitwise comparison to make sure MyName is a directory.
        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
            Debug.Print MyName    ' Display entry only if it
        End If    ' it represents a directory.
    End If
    MyName = Dir    ' Get next entry.
Loop
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #34998089
Dominik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо.

Mozilla Firefox 2.0.0.7
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #35011346
Dominik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо товарищ кладовщик . С небольшими доработками, ваш код очень даже рабочий!
______________________________________
Mozilla Firefox 2.0.0.7
...
Рейтинг: 0 / 0
Данные из Combobox в ячейку Excel
    #35015525
Dominik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
oxcomВместо этого:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
    Лист1.ComboBox1.AddItem (Лист2.Range("A1"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A2"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A3"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A4"))
    Лист1.ComboBox1.AddItem (Лист2.Range("A5"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B1"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B2"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B3"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B4"))
    Лист1.ComboBox2.AddItem (Лист2.Range("B5"))
можешь написать это:
Код: plaintext
1.
2.
3.
4.
For i =  1  To  5 
    Лист1.ComboBox1.AddItem (Лист2.Range("A" & i & ""))
    Лист1.ComboBox2.AddItem (Лист2.Range("B" & i & ""))
Next

Хорошо, если известно, сколько данных надо добавить. А если количество данных периодически меняется и число i неизвестно? Можно ли сначала получить количество данных и присвоить это число i, например 100 и тогда будет For i = 1 To 100?
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Данные из Combobox в ячейку Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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