Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/загадочный второй лист с ошибкой 13 arr(i,j)=<type mismatch> - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
загадочный второй лист с ошибкой 13 arr(i,j)=<type mismatch>
Lenokk2000 Дата: Четверг, 18.10.2012, 18:11 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

Здравствуйте, уважаемые эксперты!
Прошу указать на мои ошибки и помочь с решением:
в C:\БДДС 9 мес\ находятся типовые отчеты с 15 листами. Листы защищены и их форма спускается головной организацией. (впринципе, буду что-нибудь придумывать для шапки, и перекрестных ссылок у двух листов). Из данной папки запускаю файл свод БДДС 2013 с кодом, который суммирует значения ячеек с каждого файла в папке отдельно по каждому листу - тем самым получаю сводный отчет. (можно даже перебором с последнего к первому)
С помощью примеров Вашего и похожих форумов был написан код Sub Векселя (). И в целом, на 14 листах книги из 15 работает. А вот со вторым листом встает на строке:"If arr(i, j) = "" Then" с ошибкой 13 arr(i,j)=.
Из прочитанного, улавливается, что либо что-то с данными в листе? Однако, и диапазон менял до одной ячейки и стирал незащищенные значения - ошибка именно на этом листе стоит мертво.
Не очень понял установленный порядок выкладки кода (в первый раз пишу на форуме). Поэтому проблемный кусок, если что не так, извините:
[vba]
Code
Dim z As Variant, f As String, i&, j&
z = Range(Cells(1, 1), Cells(lLastRow, lLastCol))
f = Dir(ThisWorkbook.Path & "\" & "*.xls*", vbNormal)
Do While f <> ""
If f <> ThisWorkbook.Name Then
[a1].Formula = "=Toarr('" & pth & f & " ]" & Sheets(l).Name & "'! R1C1:R" & lLastRow & "C" & lLastCol & ")"
For i = 1 To UBound(z, 1)
For j = 1 To UBound(z, 2)
If arr(i, j) = "" Then
[/vba]
 
Ответить
СообщениеЗдравствуйте, уважаемые эксперты!
Прошу указать на мои ошибки и помочь с решением:
в C:\БДДС 9 мес\ находятся типовые отчеты с 15 листами. Листы защищены и их форма спускается головной организацией. (впринципе, буду что-нибудь придумывать для шапки, и перекрестных ссылок у двух листов). Из данной папки запускаю файл свод БДДС 2013 с кодом, который суммирует значения ячеек с каждого файла в папке отдельно по каждому листу - тем самым получаю сводный отчет. (можно даже перебором с последнего к первому)
С помощью примеров Вашего и похожих форумов был написан код Sub Векселя (). И в целом, на 14 листах книги из 15 работает. А вот со вторым листом встает на строке:"If arr(i, j) = "" Then" с ошибкой 13 arr(i,j)=.
Из прочитанного, улавливается, что либо что-то с данными в листе? Однако, и диапазон менял до одной ячейки и стирал незащищенные значения - ошибка именно на этом листе стоит мертво.
Не очень понял установленный порядок выкладки кода (в первый раз пишу на форуме). Поэтому проблемный кусок, если что не так, извините:
[vba]
Code
Dim z As Variant, f As String, i&, j&
z = Range(Cells(1, 1), Cells(lLastRow, lLastCol))
f = Dir(ThisWorkbook.Path & "\" & "*.xls*", vbNormal)
Do While f <> ""
If f <> ThisWorkbook.Name Then
[a1].Formula = "=Toarr('" & pth & f & " ]" & Sheets(l).Name & "'! R1C1:R" & lLastRow & "C" & lLastCol & ")"
For i = 1 To UBound(z, 1)
For j = 1 To UBound(z, 2)
If arr(i, j) = "" Then
[/vba]

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 18:11
Lenokk2000 Дата: Четверг, 18.10.2012, 18:50 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

Option Explicit
Dim arr

и

Function ToArr(ExtData)
arr = ExtData
End Function
(по arr - отдельный вопрос, но пока на всех листах кроме (2)-го работает)
 
Ответить
СообщениеOption Explicit
Dim arr

и

Function ToArr(ExtData)
arr = ExtData
End Function
(по arr - отдельный вопрос, но пока на всех листах кроме (2)-го работает)

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 18:50
Lenokk2000 Дата: Четверг, 18.10.2012, 18:54 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

Не понимаю пока прикрепились ли вложения. Надеюсь это не страшно, попробую прикрепить файлы еще раз: и код:

Для листингов кода есть специнструмент. А для длинных листингов - специнструмент для специнструмента.
Модераторы.
 
Ответить
СообщениеНе понимаю пока прикрепились ли вложения. Надеюсь это не страшно, попробую прикрепить файлы еще раз: и код:

Для листингов кода есть специнструмент. А для длинных листингов - специнструмент для специнструмента.
Модераторы.

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 18:54
Lenokk2000 Дата: Четверг, 18.10.2012, 20:14 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

Сорри. Вот разобрался с максимальным размером файлов: прикладываю примеры. АБДДС - это образец отчета, свод БДДС - файл свода
С уважением,
К сообщению приложен файл: 3238264.rar (32.5 Kb) · __2013-1-.rar (63.3 Kb)
 
Ответить
СообщениеСорри. Вот разобрался с максимальным размером файлов: прикладываю примеры. АБДДС - это образец отчета, свод БДДС - файл свода
С уважением,

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 20:14
Hugo Дата: Четверг, 18.10.2012, 20:49 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Файл свод БДДС 2013(1).xls отработал без ошибок.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеФайл свод БДДС 2013(1).xls отработал без ошибок.

Автор - Hugo
Дата добавления - 18.10.2012 в 20:49
Lenokk2000 Дата: Четверг, 18.10.2012, 21:20 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

В любом случае спасибо. Сейчас специально запустил в том урезанном виде источника, что ранее здесь прикрепил. Повторяется то же самое: если запустить со второго листа ("Доходы"), та же 13 ошибка в том же месте.
Если запустить с третьего или с первого (там единственное: файл источника надо подправить расширение с АБДДС.xlsb на .xls, а если запускать с первого листа, так как там обрезались ссылки, то надо еще добавить проверку на If IsError(arr(i, j)) Then и If IsError(dCell(i, j)) Then и отключить найти/заменить), то все работает. Сорри за первый лист и его "ссылки".
А второй так и зависает на arr(i,j)=<type mismatch>. И лист малюсенький - 3-и циферки. cry
С уважением,
 
Ответить
СообщениеВ любом случае спасибо. Сейчас специально запустил в том урезанном виде источника, что ранее здесь прикрепил. Повторяется то же самое: если запустить со второго листа ("Доходы"), та же 13 ошибка в том же месте.
Если запустить с третьего или с первого (там единственное: файл источника надо подправить расширение с АБДДС.xlsb на .xls, а если запускать с первого листа, так как там обрезались ссылки, то надо еще добавить проверку на If IsError(arr(i, j)) Then и If IsError(dCell(i, j)) Then и отключить найти/заменить), то все работает. Сорри за первый лист и его "ссылки".
А второй так и зависает на arr(i,j)=<type mismatch>. И лист малюсенький - 3-и циферки. cry
С уважением,

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 21:20
RAN Дата: Четверг, 18.10.2012, 21:52 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Поставьте я ячейке А1 загадочного листа формат общий. А то макрос, макрос... tongue


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПоставьте я ячейке А1 загадочного листа формат общий. А то макрос, макрос... tongue

Автор - RAN
Дата добавления - 18.10.2012 в 21:52
Hugo Дата: Четверг, 18.10.2012, 22:02 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Заработало.
Поставьте всем ячейкам пустого листа "Доходы" общий формат - он там у Вас текстовый.
О, Андрей уже ответил smile
Но я ставил одной ячейке - не помогает. Там
[vba]
Code
Cells.Select
Selection.Delete Shift:=xlUp
[/vba]
После этого формат опять текстовый sad


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеЗаработало.
Поставьте всем ячейкам пустого листа "Доходы" общий формат - он там у Вас текстовый.
О, Андрей уже ответил smile
Но я ставил одной ячейке - не помогает. Там
[vba]
Code
Cells.Select
Selection.Delete Shift:=xlUp
[/vba]
После этого формат опять текстовый sad

Автор - Hugo
Дата добавления - 18.10.2012 в 22:02
Lenokk2000 Дата: Четверг, 18.10.2012, 22:31 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 4 ±
Замечаний: 0% ±

Да! Гениально. Hugo, Вы просто супер!
RAN и Вам благодарствую.
С уважением,
 
Ответить
СообщениеДа! Гениально. Hugo, Вы просто супер!
RAN и Вам благодарствую.
С уважением,

Автор - Lenokk2000
Дата добавления - 18.10.2012 в 22:31
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!