В Listbox из Excel

Тема в разделе "Visual Basic", создана пользователем bobo, 14 дек 2010.

  1. bobo

    bobo Well-Known Member

    Регистрация:
    11 дек 2008
    Сообщения:
    86
    Симпатии:
    0
    нужна помощь в VS 2008
    необходимо скопировать несколько ячеек в excel и вставить в listbox, при этом каждая ячейка должна соответствовать новому элементу listbox.
    пробывал так:
    копировал ячейки в excel и с помощью button вставлял в listbox

    me.listbox.items.add(clipboard.getText)

    но значения вставляются в одну строку (т.е. образуется только один элемент).

    подскажите может как то можно вбить ячейки в массив и заполнить listbox с помощью цикла, или есть другие решения!!!
     
  2. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    если хотите именно через буфер, попробуйте проверить текст в буфере на символ табуляции (код 9 - так обычно ячейки в строке отделяются) и абзаца (10 или 13, не помню точно).
     
  3. bobo

    bobo Well-Known Member

    Регистрация:
    11 дек 2008
    Сообщения:
    86
    Симпатии:
    0

    ну кроме буфера я других решений не вижу...а можно подробней про проверку текста?
     
  4. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    Про проверку текста:
    Посмотрите, мб, есть что-то подобное Split - разбиение строки на массив (Variant) по разделителям
    Можно использовать также Mid Left Right + Instr (проверка наличия подстроки)
     
  5. VBAaddict

    VBAaddict Гость

    При копировании из экселя ячеек в буфер значения разделены
    vbCrLf, что соответствует Chr(13) + Chr(10) Carriage return–linefeed combination
    т.о. даже если разбить чем либо значения - не очень понятно, как без цикла их загнать в Listbox

    Для объекта Selection

    Код (Text):
    NumOfCells =Selection.Cells.Count

    For i = 1 to NumOfCells
    me.listbox.items.add(Selection.Cells(i).Value)
    Next
     
  6. bobo

    bobo Well-Known Member

    Регистрация:
    11 дек 2008
    Сообщения:
    86
    Симпатии:
    0
    а как объявить NumOfCells и Selection?
     
  7. VBAaddict

    VBAaddict Гость

    Мой кусок, как этот работае в Excel

    NumOfCells as Integer 'это я его так ввел, от нечего делать :rolleyes:
    Selection - это встроенный ?объект Excel'ля

    А дальше.. думайте
    я же понятия не имею - обращаетесь ли вы к конкретному файлу или же хотите 1000 разных файлов открыть...
    если к конкретному, тогда нужно создать объект Excel, запустить, открыть в нем файл и т.д. и т.п.
    Application...
    или Excel.Application
    в общем Yandex+Google спасут мир
     
  8. bobo

    bobo Well-Known Member

    Регистрация:
    11 дек 2008
    Сообщения:
    86
    Симпатии:
    0
    а,понятно...
    дело в том, что ячейки могут копироваться из любого случайного файла эксель...
    а поисковики пока ничем не радуют ))
     
  9. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    человек ведь хотел через буфер, а не через объекты экселя.
    а что, так не работает?
    Код (LotusScript):
    Dim vals as variant
    vals = Split(clipboard.getText, Chr(13) & Chr(10))
    For each oneval in vals
    me.listbox.items.add(oneval)
    next
     
  10. bobo

    bobo Well-Known Member

    Регистрация:
    11 дек 2008
    Сообщения:
    86
    Симпатии:
    0
    спасиб...оч помогло!
     
Загрузка...
Похожие Темы - Listbox из Excel
  1. jorjva
    Ответов:
    7
    Просмотров:
    2.593
  2. radivill
    Ответов:
    0
    Просмотров:
    1.277
  3. Serduko
    Ответов:
    2
    Просмотров:
    840
  4. virtpro
    Ответов:
    1
    Просмотров:
    1.280
  5. KingGLEB
    Ответов:
    3
    Просмотров:
    1.320

Поделиться этой страницей