Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Массив
|
|||
|---|---|---|---|
|
#18+
Как передать массив в Макрос??? DIMENSION marray(2) marray(1) = '1' marray(2) = '2' OleExcel.Run("massiv",@marray) Sub massiv(ParamArray my_mas()) a = my_mas(0) b = my_mas(1) 'ругается что нет элемента массива ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 14:33 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
Вспомнил, где я подобную пакость видал:\r /topic/54598&pg=4#384754 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 17:24 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
NNN:\r /topic/54598&pg=4#384754 \r \r Причем тута Делфин к Лисе???\r \r Мне то надо передать массив из Лисы в Макрос Васика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 17:44 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
Передай в макрос просто строку с разделителями, а в макросе создай массив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 17:57 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
lnu: Передай в макрос просто строку с разделителями, а в макросе создай массив. Я так и начинал... А теперь это не вызов макроса... А полный шабаш... OleExcel.Run("My_macro1",my1,my2,v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24) где 1)my1,my2 - строки из 3-4 параметров 2)v1-v24 - строки по 5 параметров Из них один параметр Memo-поле 3) надо добавить еще десяток параметров... типа v1-v24 проще передать два массива v1 и v2(осталось узнать как???) и по очереди их обрабатывать... А то я уже начинаю путаться где и что надо обрабатывать... По-мимо этого я подошел к предельному числу параметров... Можно передать только 27 параметров... Я может быть и продолжил наполнять имеющиеся... Так есть еще и глюки с макросом... Типа в 97 Excel напрочь отсутствуют функции Round и Replace Я очень был рад когда пришлось их описывать... Начинаю бояться что б ни че не вылезло(при добавлении параметров)... Не уж нет выхода??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 18:58 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
Зачем столько параметров? Если надо передать два массива (v1, v2): В фоксе: Код: plaintext 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. в макросе: 'StrToArray ("|1|par11|par12|par13|par14|par15|") StrToArray (v1String) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 20:30 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
2IgorProgrammer > Причем тута Делфин к Лисе??? > Мне то надо передать массив из Лисы в Макрос Васика... А я-то почему-то подумал, что там пример функции обработки массива на VB.. Ну тогда пробуй так: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2003, 21:45 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
lnu: Зачем столько параметров? Наверно недочитал... v1-v24 строковые переменные... Например: v1 - 'A1 ' + '1 ' + Memo-поле + '2 ' + 't ' Они обрабатываются приблизительно так-же как выше описано... Только я отпускаю по 10 символов на 1, 2, 4, 5 параметры Потом обризаю слева 20 и справа 20... а дальше пошло-поехало Объединить их я не могу... так как они содержат Memo-поля... в которых может встретиться любой символ или набор символов... Очень проблиматично выбрать разделитель между параметрами... Плюс Memo-поля могут содержать строки более 5000 символов... Представляешь себе если я их объеденю... какая это строка получится... А теперь мне надо еще десять таких же строковых параметров... Если прибавлять с существующим 24... то в один прикрасный момент мкрос просто завалится... NNN: А я-то почему-то подумал, что там пример функции обработки массива на VB.. Ну тогда пробуй так: Как обработать массив для меня не проблема... Мне надо передать его в Макрос Васика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2003, 11:23 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
2IgorProgrammer > Как обработать массив для меня не проблема... > Мне надо передать его в Макрос Васика... Ну ладно, значит с макросом уже нет проблем? Ах ну да, макрос же еще вчера написали. Ну на всякий случай сохраняем макрос в файле с именем test.xls. Тогда разве такое не работает? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2003, 12:29 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
NNN: Сенкс... У меня в макросе было объявлено Sub massiv(ParamArray my_mas() As Variant) И приходило только 1 значение макроса... В чем разница... Sub massiv(ParamArray my_mas() As Variant) и Sub massiv(my_mas As Variant) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:00 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
Ужасти какие... Пример от Aijik Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. PROCEDURE ArrayPasser PARAMETERS lcArrayName RETURN @&lcArrayName ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:14 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
2IgorProgrammer Точно не скажу в чем разница, похоже в одном случае в качестве параметра выступает массив с одним значением типа Variant, а в другом переменная типа Variant, которая интерпретируется как массив. 2Crip А у меня на excel97 ни фига не работает :/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:25 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
Версия VFP должна быть не ниже 7... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:28 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
2Crip 8-я подойдет? Кстати, почему? Кроме "шла" в ексель ничего не улетает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:33 |
|
||
|
Массив
|
|||
|---|---|---|---|
|
#18+
2NNN Ну сделай Range по-больше... Range("A1:D2") например... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2003, 12:36 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32313382&tid=1597639]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
142ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 489ms |

| 0 / 0 |
