Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 6459
Последний выпуск: 19.06.2015

Как вытащить адреса из текстового файла?

234
06 декабря 2017 года
Dmitry2064
588 / / 06.12.2006
Не могу быстро разобраться с двумерным массивом (как его наполнить [с одномерным могу] и как с ним поработать).
Есть текстовый файл (mData.txt) с начинкой:
Иванов¦Iv@mail.ru;
Петров¦Pe@mail.ru;
Сидоров¦Si@mail.ru;

Надо из него сделать выпадающий(появляющийся) список с возможностью отметить галочкой получателей. И после выбора получить в переменную адреса (которые сидят после разделителя ¦).
Делаю макрос для отправки письма через Аутлюк с аттачем, путь к которому сидит в буфере обмена.
234
07 декабря 2017 года
Dmitry2064
588 / / 06.12.2006
Пришлось через текст выделять
Код:
Dim mAddress As New Collection
Dim mFIO As New Collection
Dim mMail As New Collection
Open "d:mData.txt" For Input As #1
Do While Not EOF(1)
        Line Input #1, TextLine
        mAddress.Add Item:=TextLine
        TextLine1 = TextLine1 + TextLine
Loop
    Close #1

For a = 1 To mAddress.Count
    mFIO_tmp = Split(mAddress(a), "¦")(0)
    mFIO.Add Item:=mFIO_tmp
Next a

For b = 1 To mAddress.Count
    mMail_tmp = Split(mAddress(b), "¦")(1)
    mMail.Add Item:=mMail_tmp
Next b
261
08 декабря 2017 года
pashulka
985 / / 19.09.2004
Если в используемом ListBox есть свойство Column, то как вариант :
Код:
Private Sub UserForm_Initialize()
    Dim t$, i&, a1(), a2: ReDim a1(1, 0)

    Open "D:mData.txt" For Input As #1
        Do While Not EOF(1)
           Line Input #1, t
           a2 = Split(t, "¦")
           a1(0, i) = a2(0)
           a1(1, i) = Replace(a2(1), ";", "")
           i = i + 1: ReDim Preserve a1(1, i)
        Loop
    Close #1
   
    ListBox1.Column = a1
End Sub

Private Sub CommandButton1_Click()
    Dim t$, i&
    With ListBox1
         For i = 0 To .ListCount - 1
             If .Selected(i) = True Then
                t = t & "," & .List(i, 1)
             End If
         Next
    End With
    MsgBox Mid(t, 2)
End Sub
234
25 декабря 2017 года
Dmitry2064
588 / / 06.12.2006
Цитата: pashulka
Если в используемом ListBox есть свойство Column, то как вариант :
Код:
Private Sub UserForm_Initialize()
    Dim t$, i&, a1(), a2: ReDim a1(1, 0)

    Open "D:mData.txt" For Input As #1
        Do While Not EOF(1)
           Line Input #1, t
           a2 = Split(t, "¦")
           a1(0, i) = a2(0)
           a1(1, i) = Replace(a2(1), ";", "")
           i = i + 1: ReDim Preserve a1(1, i)
        Loop
    Close #1
   
    ListBox1.Column = a1
End Sub
....

Спасибо. Именно такой вариант и хотелось увидеть - коротко и красиво.

60K
06 июля
ЗАРАБОТОК КРИПТОВАЛЮТЫ
206 / / 06.07.2018
____________________
Заработок от 20 000 рублей в день !!!
- Вам нужен готовый, уже настроенный метод заработка?
- Без сложных курсов, в которых вы не можете разобраться.
- Без рутинной работы.
- Без обмана и чтобы деньги были достойные.
- Именно готовый заработок, а не бесполезный курс!
Подробности на сaйте http://mod-servis.ru

____________________
Заработок от 20 000 рублей в день !!!

- Вам нужен готовый, уже настроенный метод заработка?
- Без сложных курсов, в которых вы не можете разобраться.
- Без рутинной работы.
- Без обмана и чтобы деньги были достойные.
- Именно готовый заработок, а не бесполезный курс!
Подробности на сaйте http://mod-servis.ru

____________________

76321

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог