Работа с Excel и Thunderbird - VBA

Узнай цену своей работы

Формулировка задачи:

Есть код, который отправляет конкретный файл, конкретному человеку (или нескольким)
Листинг программы
  1. Sub thu()
  2. send_soft = "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe" ' путь к thunderbird
  3. stroka1 = " -compose to='" & "removed@mail.ru" & "," & "removed@mail.ru" ' кому отправляю
  4. stroka2 = "',subject='" & "Тест" ' тема
  5. stroka3 = "',body=""Тест" ' текст письма
  6. stroka4 = """,attachment=" & "D:\20_FS\04_Slo\TMP\Папка\DAY\!_Очень нужный файл.xlsx" ' путь к файлу, который отправляю
  7. stroka = send_soft & stroka1 & stroka2 & stroka3 & stroka4
  8. Set SMs = CreateObject("WScript.Shell")
  9. SMs.Exec stroka
  10. End Sub
Как сделать так, чтоб отправлялось больше 1 файла и увеличить длину переменной "stroka".

Решение задачи: «Работа с Excel и Thunderbird»

textual
Листинг программы
  1. 'Определение максимального количества аргументов методом эксперимента (подбор половинным делением)
  2. option explicit
  3.  
  4. Const CriticalMAX = 10000
  5.  
  6. dim Home, oStream, Str, nCheck, curMAX, curMIN, nOK
  7.  
  8. Home = WScript.ScriptFullName
  9. Home = left(Home, instrrev(Home, "\") - 1)
  10.  
  11. nCheck = CriticalMAX
  12. curMAX = CriticalMAX
  13. curMIN = 0
  14.  
  15. Do
  16.  
  17.   set oStream = Createobject("WScript.Shell").Exec(Home & "\MaxArgTest.cmd" & replace(string(nCheck, "A"), "A", " A"))
  18.   Str = oStream.StdOut.ReadAll()
  19.   set oStream = Nothing
  20.  
  21.   if len(Str) - (nCheck - 1) - 2 <> nCheck Then ' - (nCheck - 1) ' кол-во пробелов между аргументами ' - 2 'CrLf
  22.    curMAX = nCheck - 1
  23.   else
  24.     nOK = nCheck
  25.     curMIN = nCheck + 1
  26.   end if
  27.  
  28.   nCheck = (curMAX - curMIN) \ 2 + curMIN
  29.  
  30.   msgbox "MIN = " & cstr(curMIN) & "   " & "MAX = " & cstr(curMAX) & "    " & "Len of String = " & cstr(len(Str)) & _
  31. vbcrlf & "Now Checking " & cstr(nCheck)
  32.  
  33. Loop until curMIN >= curMAX
  34.  
  35. msgbox "MAX possible is " & cstr(nOK)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут