powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Слишком большое количество элементов в массиве
10 сообщений из 10, страница 1 из 1
Слишком большое количество элементов в массиве
    #39645953
maxim863
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программа работает хорошо ,когда количество элементов в массиве равно 109 . Но мне нужно 174 . Когда я записываю 174 эл-та строка

Код: vbnet
1.
F = Array("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", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113")

становится красной и выдает ошибку Syntax Error . Как быть в такой ситуации ?

Код: 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.
31.
Sub óäàëèòü()
 Dim book1 As Workbook
 Dim B As String
 Dim v As Long
 Dim e As Long
 Dim F
 Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False
    
F = Array("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", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109")

 
 
For t = 61 To 88
     Set book1 = Workbooks.Open("E:\Super M\Ïðîåêò ñòàâêè\Ïîèñê ðåøåíèÿ\Óñîâ 7\âñïîìîãàòåëüíûå ïðîãðàììû\3 ñåçîíà\áîëâàíêà\" & F(t) & ".xlsm")
   For v = 1 To 14

        book1.Worksheets("Ëèñò" & v).Cells(34, 1).Resize(200, 6).ClearContents
          
   Next v
    book1.Save
    book1.Close
Next t
  
  Application.ScreenUpdating = True
  Application.Calculation = xlCalculationAutomatic
  Application.EnableEvents = True
     
   End Sub
   


...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39645957
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxim863,

Попробуйте разбить строку на несколько:
Код: vbnet
1.
2.
3.
f = Array("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", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "21", _
 "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62",  _
"63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113")
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39645959
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но куда проще было бы записать эти номера на лист в ячейки и оттуда считывать.
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39645961
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да заполнить в цикле, ё моё...
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39645968
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А зачем вообще массив нужен, если известно, что F(t)=t+1?
Код: plaintext
1.
2.
3.
 [code=vbnet]
For t = 61 To 88
     Set book1 = Workbooks.Open("E:\что-то там\" & t+1 & ".xlsm")

...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39646516
maxim863
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанский,
Спасибо . Так проще
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39646704
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
Enumerable.Range(1, 128).Select(p=>p.ToString()).ToArray()
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39646866
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxim863,

Код: vbnet
1.
2.
3.
4.
5.
Dim arSrc As Variant, arRes As Variant
    Range("A1").Value = 1
    Range("A1").DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1, Stop:=174
    arSrc = Range("A1:A174").Value
    arRes = Application.Transpose(Application.WorksheetFunction.Index(arSrc, 0, 0))
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39647157
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
big-duke,
не надо трогать лист :)
Код: vbnet
1.
arRes = [TRANSPOSE(ROW(1:174))]

Правда, это работает только при стиле ссылок А1. Для любого стиля ссылок
Код: vbnet
1.
If Application.ReferenceStyle = xlA1 Then arRes = [TRANSPOSE(ROW(1:174))] Else arRes = [TRANSPOSE(ROW(R1:R174))]
...
Рейтинг: 0 / 0
Слишком большое количество элементов в массиве
    #39647206
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Казанский,

[TRANSPONSE] это вызов Application.Transpose ?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Слишком большое количество элементов в массиве
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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