Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Run time error 13 / 4 сообщений из 4, страница 1 из 1
14.03.2013, 12:06
    #38183519
Soundboykilla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run time error 13
Доброго времени суток.
Возникла проблема с кодом:

Код: vbnet
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.
Sub Ini_Inf()
'
'  первый проход *.out. выбираем нач инф
'
   Set t = Workbooks("Weight.xls")
   Set s = t.Worksheets("Лист2")
   s.Range("b1") = " - номер свободной строки "
   s.Range("a2") = "Выборка информации из файла " & strFlNm
   NFree_Str = 3
   s.Range("a1") = NFree_Str
'
   k_FlNm = FreeFile
   Open strFlNm For Input As #k_FlNm
   Line Input #k_FlNm, str
   Do While Not EOF(k_FlNm)
      j = InStr(1, str, "and Effect.=")
      If j <> 0 Then
         n_RegZone = Mid(str, j - 5, 5)
         ReDim C_RegPh(n_RegZone)
         ReDim V_RegZ(n_RegZone)
         n_EffZone = Mid(str, j + 12, 4)
         s.Range("a" & NFree_Str) = n_RegZone
         s.Range("b" & NFree_Str) = " - количество регистрационных зон"
         NFree_Str = NFree_Str + 1
         s.Range("a1") = NFree_Str
      End If



ругается на строку
Код: vbnet
1.
n_EffZone = Mid(str, j + 12, 4)

13 ошибкой.
В чём может быть проблема ?
...
Рейтинг: 0 / 0
14.03.2013, 12:13
    #38183536
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run time error 13
...
Рейтинг: 0 / 0
14.03.2013, 13:08
    #38183698
Soundboykilla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run time error 13
Shocker.Pro,
Переменные объявлены через Public
Код: vbnet
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.
Public k_FlNm As Integer      '    канала для чтения из файлв
Public str As String          '    строка для текущих работ
Public strFlNm As String      '    имя файла с путем
Public i As Integer             '
Public j As Integer             '
Public j1 As Integer            '  для текущих индексов
Public k As Integer             '
Public Const N_IzId As Integer = 12      '  кол-во интересных изотопов (U, Pu, Gd)
Public izid(N_IzId) As String   '  массив имен изотопов
Public M_IzId(N_IzId) As Double   '  массивые числа изотопов
Public IzNm As String           '  текущее имя изотопа
Public W_IzId(N_IzId) As Double '  массив весов изотопов
Public n_RegZone As Integer   '    число и
Public i_RegZone As Integer   '    индекс регистр зон
Public n_PhZone As Integer    '    число и
Public i_PhZone As Integer    '    индекс физических зон
Public n_EffZone As Integer   '    число эффективных зон
Public C_RegPh() As Integer   '  массив соотв рег и физ зон
Public V_RegZ() As Double     '  массив объемов рег зон
Public V_PhZ() As Double      '  массив объемов физ зон
Public C_PhBurn() As Integer  '  массив схем выгорания в физ зонах
Public Vol_Cell As Double     '  объем ячейки
Public Const d_AEM As Double = 1.6747 ' аем без Е-24
Public d_A As Double
Public d_B As Double
Public Str_alf(26) As String  '  алфавит для поиска столбцов в Excel
'
Public s           As Excel.Worksheet ' лист в книге Excel
Public t           As Excel.Workbook  ' книга Excel
Public NFree_Str   As Integer '  номер своб строки в листе Excel



Или же теперь в каждом Sub ещё раз объявлять использующуюся переменную через Dim ?
...
Рейтинг: 0 / 0
14.03.2013, 13:46
    #38183802
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run time error 13
А в чем тогда вопрос:
Код: vbnet
1.
Public n_RegZone As Integer


а функция Mid возвращает String
на что и идет ошибка - несоответствие типов.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Run time error 13 / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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