IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> MsgBox (VBA), (разделено)
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 36
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Доброго времени суток!
Никак не могу справиться с задачей:
Результаты вычислений вывести в документ MS Word (с этим справился) и с помощью оператора вывода
MsgBox. А вот с последним заморочка, никак на получается все результаты в одном окне вывести.
Код
Dim Матрица(1 To 5, 1 To 5) As Integer
Dim Массив(10) As Integer
Dim h As Integer
Dim s As String
Private Type Матрицы
Массив As String
End Type
Private Sub CommandButton1_Click()
Open "Матрицы2.doc" For Output As #1
Макс = Матрица(1, 5)
Мин = Матрица(1, 5)
For i = 1 To 5
For j = 1 To 5
Матрица(i, j) = Val(InputBox("Введите элемент матрицы:", "Введите элемент матрицы:"))
If Матрица(i, j) > Макс Then Макс = Матрица(i, j)
If Матрица(i, j) < Мин Then Мин = Матрица(i, j)
h = Макс - Мин
Массив(10) = h
Print #1, Tab(3); Массив(10)
Next j
Next i
Close #1
Open "Матрицы2.doc" For Input As #1
While Not EOF(1)
Input #1, s
MsgBox s
Wend
Close #1
End Sub
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Тебе надо в MsgBox-е вывести всю матрицу, что-ли? Так это вот так делается:

Код
Private Sub st()
   Dim s As String
   Dim v As Integer

   s = ""
   For j = 1 To 3
      For i = 1 To 3
         v = Val(InputBox("Input value:", "Input value:"))
         s = s + " " + CStr(v)
      Next i
      s = s + vbCr
   Next j
   MsgBox s
End Sub
, в результате вся матрица выводится одним вызовом...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 36
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


volvo, очередной раз спасибо вам огромное!
Но всетаки хотелось бы узнать, как из файла несколько строк поместить в одном MsgBox-е. Что то у меня получается либо каждое слово в отдельном, либо в одном , но только первая строка.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Все точно так же, как я показал выше:

Код
Dim Mx(1 To 5, 1 To 5) As Integer
Dim h As Integer
Dim s As String ' Это будем читать из файла
Dim MyS As String ' Здесь будем конструировать то, что покажет MsgBox

Private Sub CommandButton1_Click()
   Open "doc2.doc" For Output As #1
   Max = Mx(1, 5)
   Min = Mx(1, 5)
   For i = 1 To 5
      For j = 1 To 5
         Mx(i, j) = Val(InputBox("Input value:", "Input value:"))
         If Mx(i, j) > Max Then Max = Mx(i, j)
         If Mx(i, j) < Min Then Min = Mx(i, j)
         h = Max - Min
         Print #1, Tab(3); h
      Next j
   Next i
   Close #1
  
   MyS = vbNullString
   Open "Doc2.doc" For Input As #1
   While Not EOF(1)
      Input #1, s
      MyS = MyS + s + " " ' Добавляем прочитанную строку и пробел к результату
   Wend
   Close #1
  
   MsgBox MyS ' И только теперь, после цикла, выводим MsgBox
End Sub

Я убрал все лишние типы и переменные. Единственное, что здесь "не так" - это: ты вроде вводишь матрицу, а получаешь в окошке массив, то есть все вытянуто в одну строку. Если хочешь - добавь строчку, чтоб на каждой пятой итерации к MyS добавлялся еще и перевод строки - тогда будет настоящая матрица.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 36
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Спасибо! Сам тоже вроде разобрался, теперь результат выводит и в файл, и в MsgBox, и в форму, осталось еще в ячейки Excel вывести...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 36
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Цитата
осталось еще в ячейки Excel вывести...

С этим вообще все просто оказалось smile.gif

Сообщение отредактировано: Евгений -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 5.05.2024 23:25
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name