First you had an issue of declaring your ranges, C4
as itself in VBA is considered as a variable, you need to use one these :
[C4]
or Range("C4")
or Cells(4,3)
or Cells(4,"C")
So your lines or defining ranges should look like this :
Set source1 = Worksheets("Filter").Range([C4], [C6498])
Set target1 = Worksheets("30").Range(Range("A2"), Range("AP95787"))
Secondly, the .Height
property will give you the size of the range, not the number of rows, to get the number of rows, you need to use Range(...).Rows.Count
source_size = source1.Rows.count
target_size = target1.Rows.count
Here is your full code :
Option Explicit
Public Function generate() As Integer
Dim source_size As Long
Dim target_size As Long
Dim i As Long
Dim j As Long
Dim count As Long
Dim source1 As Range
Dim target1 As Range
Set source1 = Worksheets("Filter").Range("C4:C6498")
Set target1 = Worksheets("30").Range("A2:AP95787")
source_size = source1.Rows.count
target_size = target1.Rows.count
For i = 1 To source_size Step 1
For j = 1 To target_size Step 1
If Application.source1.Cells(i, 1).Value = target1.Cells(j, 5).Value Then
target1.Rows(j).Select
'Selection.Copy
Worksheets("result").Range("A1").Rows("1:1").Insert Shift:=xlDown
End If
Next j
Next i
generate = 0
End Function
kkrasilov Пользователь Сообщений: 26 |
Добрый день! Мне в коде нужно узнать кол-во дней в месяце, пишу Day(Month(10)), vba переводит все с маленькой буквы day(month(10)) и выдает ошибку Wrong number of arguments or invalid property assignment
Тот же самый код нормально работает в другой книге, с такими же библиотеками. |
Hugo Пользователь Сообщений: 23374 |
В библиотеках missing нет? |
kkrasilov Пользователь Сообщений: 26 |
Missing тоже нету. Изменено: kkrasilov — 28.10.2015 16:39:01 |
kkrasilov Пользователь Сообщений: 26 |
Пробовал также прописать Microsoft.VisualBasic.DateAndTime.Day(Month(10)), не получается. |
The_Prist Пользователь Сообщений: 14266 Профессиональная разработка приложений для MS Office |
#5 28.10.2015 16:58:34 Функция Day в качестве аргумента принимает ДАТУ. И возвращает номер текущего дня. Т.е. для Day(Now) будет возвращено 28, т.к. сегодня 28.10.2015. И Month так же работает, только возвращает номер месяца.
вернет кол-во дней в текущем месяце. P.S. Скобочку одну в конце забыл. Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||
kkrasilov Пользователь Сообщений: 26 |
Та же ошибка, выделяет month, и пишет Wrong number of arguments or invalid property assignment |
Sanja Пользователь Сообщений: 14850 |
#7 28.10.2015 17:03:20
Ну значит настало время показать проблемный файл Согласие есть продукт при полном непротивлении сторон. |
||
The_Prist Пользователь Сообщений: 14266 Профессиональная разработка приложений для MS Office |
Тогда проверьте, не объявлена ли в проекте где-то переменная, функция или процедура, с таким же названием: Day(или Month). Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
Hugo Пользователь Сообщений: 23374 |
У меня msgbox Day(Month(10)) выводит 31. Откуда оно его берёт — не понял |
Doober Пользователь Сообщений: 2232 |
#10 28.10.2015 17:18:01
|
||||
kkrasilov Пользователь Сообщений: 26 |
Вот файл. Код не работает в любом месте. |
Hugo Пользователь Сообщений: 23374 |
Doober, — я видел что там 1, но не могу допереть почему 1=31.12.1899 Изменено: Hugo — 28.10.2015 17:35:30 |
kkrasilov Пользователь Сообщений: 26 |
#13 28.10.2015 17:49:11 Проверил весь проект. Нашел переменную month, как и говорил The_Prist ! Спасибо большое за советы! Тему можно закрывать) |
Номер ошибки: | Ошибка во время выполнения 450 | |
Название ошибки: | Wrong number of arguments or invalid property assignment | |
Описание ошибки: | The number of arguments to a procedure must match the number of parameters in the procedure’s definition. | |
Разработчик: | Microsoft Corporation | |
Программное обеспечение: | Windows Operating System | |
Относится к: | Windows XP, Vista, 7, 8, 10, 11 |
«Wrong number of arguments or invalid property assignment» Введение
«Wrong number of arguments or invalid property assignment» обычно называется формой «ошибки времени выполнения». Когда дело доходит до Windows Operating System, инженеры программного обеспечения используют арсенал инструментов, чтобы попытаться сорвать эти ошибки как можно лучше. К сожалению, такие проблемы, как ошибка 450, могут быть пропущены, и программное обеспечение будет содержать эти проблемы при выпуске.
Некоторые пользователи могут столкнуться с сообщением «The number of arguments to a procedure must match the number of parameters in the procedure’s definition.» при использовании Windows Operating System. Когда это происходит, конечные пользователи программного обеспечения могут сообщить Microsoft Corporation о существовании ошибки 450 ошибок. Разработчик сможет исправить свой исходный код и выпустить обновление на рынке. Следовательно, разработчик будет использовать пакет обновления Windows Operating System для устранения ошибки 450 и любых других сообщений об ошибках.
Что на самом деле вызывает ошибку времени выполнения 450?
Ошибки выполнения при запуске Windows Operating System — это когда вы, скорее всего, столкнетесь с «Wrong number of arguments or invalid property assignment». Три распространенные причины, по которым ошибки во время выполнения, такие как всплывающее окно ошибки 450:
Ошибка 450 Crash — Ошибка 450 может привести к полному замораживанию программы, что не позволяет вам что-либо делать. Это возникает, когда Windows Operating System не работает должным образом или не знает, какой вывод будет подходящим.
Утечка памяти «Wrong number of arguments or invalid property assignment» — ошибка 450 утечка памяти приводит к тому, что Windows Operating System постоянно использует все больше и больше памяти, увяская систему. Потенциальные триггеры могут быть бесконечным циклом, что приводит к тому, что работа программы запускается снова и снова.
Ошибка 450 Logic Error — Компьютерная система создает неверную информацию или дает другой результат, даже если входные данные являются точными. Виновником в этом случае обычно является недостаток в исходном коде Microsoft Corporation, который неправильно обрабатывает ввод.
Основные причины Microsoft Corporation ошибок, связанных с файлом Wrong number of arguments or invalid property assignment, включают отсутствие или повреждение файла, или, в некоторых случаях, заражение связанного Windows Operating System вредоносным ПО в прошлом или настоящем. Как правило, решить проблему позволяет получение новой копии файла Microsoft Corporation, которая не содержит вирусов. Запуск сканирования реестра после замены файла, из-за которого возникает проблема, позволит очистить все недействительные файлы Wrong number of arguments or invalid property assignment, расширения файлов или другие ссылки на файлы, которые могли быть повреждены в результате заражения вредоносным ПО.
Ошибки Wrong number of arguments or invalid property assignment
Эти проблемы Windows Operating System, связанные с Wrong number of arguments or invalid property assignment, включают в себя:
- «Ошибка Wrong number of arguments or invalid property assignment. «
- «Недопустимая программа Win32: Wrong number of arguments or invalid property assignment»
- «Wrong number of arguments or invalid property assignment должен быть закрыт. «
- «К сожалению, мы не можем найти Wrong number of arguments or invalid property assignment. «
- «Wrong number of arguments or invalid property assignment не может быть найден. «
- «Проблема при запуске приложения: Wrong number of arguments or invalid property assignment. «
- «Не удается запустить Wrong number of arguments or invalid property assignment. «
- «Wrong number of arguments or invalid property assignment остановлен. «
- «Ошибка в пути к программному обеспечению: Wrong number of arguments or invalid property assignment. «
Обычно ошибки Wrong number of arguments or invalid property assignment с Windows Operating System возникают во время запуска или завершения работы, в то время как программы, связанные с Wrong number of arguments or invalid property assignment, выполняются, или редко во время последовательности обновления ОС. Важно отметить, когда возникают проблемы Wrong number of arguments or invalid property assignment, так как это помогает устранять проблемы Windows Operating System (и сообщать в Microsoft Corporation).
Создатели Wrong number of arguments or invalid property assignment Трудности
Проблемы Windows Operating System и Wrong number of arguments or invalid property assignment возникают из отсутствующих или поврежденных файлов, недействительных записей реестра Windows и вредоносных инфекций.
Более конкретно, данные ошибки Wrong number of arguments or invalid property assignment могут быть вызваны следующими причинами:
- Недопустимый Wrong number of arguments or invalid property assignment или поврежденный раздел реестра.
- Вирус или вредоносное ПО, повреждающее Wrong number of arguments or invalid property assignment.
- Wrong number of arguments or invalid property assignment злонамеренно или ошибочно удален другим программным обеспечением (кроме Windows Operating System).
- Другая программа, конфликтующая с Wrong number of arguments or invalid property assignment или другой общей ссылкой Windows Operating System.
- Неполный или поврежденный Windows Operating System (Wrong number of arguments or invalid property assignment) из загрузки или установки.
Продукт Solvusoft
Загрузка
WinThruster 2023 — Проверьте свой компьютер на наличие ошибок.
Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11
Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление
2 / 2 / 0 Регистрация: 29.09.2010 Сообщений: 207 |
|
1 |
|
28.01.2014, 01:04. Показов 19160. Ответов 17
При выполнении этой программки вылетает вот такое сообщение: Wrong number of arguments or invalid property assignment. В чём проблема? Строго не судите, изучаю VBA аж второй день) Миниатюры
0 |
98 / 49 / 0 Регистрация: 14.08.2013 Сообщений: 230 Записей в блоге: 4 |
|
28.01.2014, 07:16 |
2 |
vbCritical + vbOkOnly — вот твоя проблема, должно быть что-то одно!
0 |
здесь больше нет… 3372 / 1670 / 184 Регистрация: 03.02.2010 Сообщений: 1,219 |
|
28.01.2014, 10:13 |
3 |
vbCritical + vbOkOnly — вот твоя проблема, должно быть что-то одно! это не так, почему не могут быть вместе красный крест и кнопка «ОК» (см. рис.) я думаю нужно искать в Tools/References… Missing‘и Изображения
0 |
Модератор 11400 / 4710 / 759 Регистрация: 07.08.2010 Сообщений: 13,662 Записей в блоге: 4 |
|
28.01.2014, 10:38 |
4 |
ДЕЛО в private sub
0 |
2 / 2 / 0 Регистрация: 29.09.2010 Сообщений: 207 |
|
28.01.2014, 13:42 [ТС] |
5 |
в програмке параметра нет, а вызывается она откуда-то с параметром Что это за параметр? И откуда он взялся, если я программку не изменял?
0 |
5590 / 1580 / 406 Регистрация: 23.12.2010 Сообщений: 2,366 Записей в блоге: 1 |
|
28.01.2014, 14:42 |
6 |
У меня работает.
0 |
5590 / 1580 / 406 Регистрация: 23.12.2010 Сообщений: 2,366 Записей в блоге: 1 |
|
28.01.2014, 14:59 |
7 |
Обратите внимание на разницу в срабатывании клика по OptionButton3 и OptionButton4 в файле примера. Миниатюры
0 |
2 / 2 / 0 Регистрация: 29.09.2010 Сообщений: 207 |
|
28.01.2014, 15:48 [ТС] |
8 |
KoGG, так мне что, постоянно в Ворде писать, а потом переносить в Эксель? И вот, мой файл со всеми прибамбасами, которые за вчера сочинил. Может, так понятнее будет.
0 |
Заблокирован |
|
28.01.2014, 15:50 |
9 |
Yoooo, если бы вы приложили файл с проблемой вместо картинки, задача давно была бы решена.
0 |
2 / 2 / 0 Регистрация: 29.09.2010 Сообщений: 207 |
|
28.01.2014, 15:52 [ТС] |
10 |
Апострофф, уже сделал)
0 |
KoGG 5590 / 1580 / 406 Регистрация: 23.12.2010 Сообщений: 2,366 Записей в блоге: 1 |
||||
28.01.2014, 16:11 |
11 |
|||
Сообщение было отмечено Yoooo как решение Решение Я привел пример в качестве прикола, как делать не надо, но Вас так могут надуть.
Именно эта процедура и вызывает ошибку, так как нельзя называть свои процедуры, функции и переменные словами, зарезервированными в языке.
1 |
2 / 2 / 0 Регистрация: 29.09.2010 Сообщений: 207 |
|
28.01.2014, 16:22 [ТС] |
12 |
KoGG, блиииин… Это ж надо было так ошибиться. Зато, теперь навсегда это запомню.
0 |
mrf 12 / 12 / 4 Регистрация: 16.03.2012 Сообщений: 252 |
||||||||
28.09.2016, 11:02 |
13 |
|||||||
Здравствуйте,
А это выводит ошибку Wrong number of arguments or invalid property assignment :
все же верно…. должно быть……. вроде….?
0 |
Заблокирован |
|
28.09.2016, 11:19 |
14 |
Это ж надо было так ошибиться mrf, поищите в своем проекте, где и зачем вы переопределили Range?
0 |
KoGG 5590 / 1580 / 406 Регистрация: 23.12.2010 Сообщений: 2,366 Записей в блоге: 1 |
||||
28.09.2016, 11:32 |
15 |
|||
mrf первый фрагмент работает, потому что там нет действия .Select и сравнивать его со 2-м — бессмысленно. Если в столбце С ничего нет, то строка
вызовет ошибку , так как мы пытаемся выделить строку, ниже максимального количества строк. Если нет ни одной открытой книги — ошибка, негде взять Range, нет активного листа. В обоих случаях это «Application-degined or object-defined error» (Офис 2010)
0 |
mrf 12 / 12 / 4 Регистрация: 16.03.2012 Сообщений: 252 |
||||||||
28.09.2016, 11:43 |
16 |
|||||||
да вроде нигде…
другой модуль:
так вот lastrow отдельно работает, и все ок даже на сочетание клавиш, а в связке с риббоном- нет.. На сколько понимаю, если проблема с RANGE, то не работало бы и в др. мете.. или не так? Добавлено через 1 минуту
0 |
Заблокирован |
|
28.09.2016, 11:51 |
17 |
Попробуйте заменить
Range на Excel.Range?
0 |
12 / 12 / 4 Регистрация: 16.03.2012 Сообщений: 252 |
|
28.09.2016, 12:49 |
18 |
не работает… Добавлено через 50 минут
0 |
Error 800A01C2 – Wrong number of arguments of invalid property
assignment.
June 30, 2004
Error Codes, Logon
Troubleshooting Error 800A01C2 – Wrong number of arguments of invalid property assignment.
Error 800A01C2 is a tricky problem. Check to see if your script needs an extra ‘Set’ Command
Introduction to Code 800A01C2
Error code, 800A01C2 occurs when you execute a VBScript. This is a runtime error, therefore check the names of your objects.
The Symptoms You Get
The script does not execute as you had hoped. Instead you get a message box like this picture: (Screen shot kindly sent in by Jim Wells.)
The Cause of Code 800A01C2
The best clue to the error comes at the end of the line, the word ‘objUser’. objUser is a valid object and term, therefore we need to investigate what is missing. I solved the problem by comparing with another script, which executed perfectly. It turned out that ‘Set’ was required in front of objUser.
Incidentally, Source: reports a runtime error not a compilation error, this means you are looking not for a pure syntax problem, but a fault logic error. In the case of runtime errors, you can use this temporary work around. Add this statement just before the line which errors: On Error Resume Next.
The Solutions Wrong number of arguments of invalid property assignment.
Check the names in your script, pay particular attention to object names. Note: The Line: 6 Char: 1 In this case it is not Char 1 to blame, more that there is something wrong and none of the line can execute. In this case it should be Set objUser =
As a last resort, in the case of runtime errors, you can add this line:
On Error Resume Next.
‡
Example of Error 800A01C2 Script
Note: The Line: 6 objUser
The script needs a ‘Set’ command before objUser
‘CREATE USER AND SET PASSWORD
strcn = bilbo56
strsam= bilbo56
strpasswd = pauline1
Set objOU=GetObject(«LDAP://ou=Droitwich,dc=cp,dc=com»)
objUser = objOU.Create(«User»,»cn=bilbo56″)
objUser.Put «sAMAccountName»,»bilbo56″
ObjUser.SetInfo
objUser.SetPassword strpasswd
Corrected Version
‘CREATE USER AND SET PASSWORD
strcn = bilbo56
strsam= bilbo56
strpasswd = pauline1
Set objOU=GetObject(«LDAP://ou=Droitwich,dc=cp,dc=com»)
Set objUser = objOU.Create(«User»,»cn=bilbo56″)
objUser.Put «sAMAccountName»,»bilbo56″
ObjUser.SetInfo
objUser.SetPassword strpasswd
See More Windows Update Error Codes 8004 Series
• Error 800A101A8 Object Required •Error 800A0046 •Error 800A10AD •Error 800A000D
• Error 80048820 •Error 800A0401 •Review of SolarWinds Permissions Monitor
• Error 80040E14 • Error 800A03EA • Error 800A0408 • Error 800A03EE
Guy Recommends: WMI Monitor and It’s Free!
Windows Management Instrumentation (WMI) is one of the hidden treasures of Microsoft operating systems. Fortunately, SolarWinds have created the WMI Monitor so that you can examine these gems of performance information for free. Take the guess work out of which WMI counters to use for applications like Microsoft Active Directory, SQL or Exchange Server.
Download your free copy of WMI Monitor
Do you need additional help?
- For interpreting the WSH messages check Diagnose 800 errors.
- For general advice try my 7 Troubleshooting techniques.
- See master list of 0800 errors.
- Codes beginning 08004…
- Codes beginning 08005…
- Codes beginning 08007…
- Codes beginning 0800A…
Give something back?
Would you like to help others? If you have a good example of this error, then please email me, I will publish it with a credit to you:
If you like this page then please share it with your friends
About The Author
Guy Recommends: WMI Monitor and It’s Free!
Windows Management Instrumentation (WMI) is one of the hidden treasures of Microsoft operating systems. Fortunately, SolarWinds have created the WMI Monitor so that you can examine these gems of performance information for free. Take the guess work out of which WMI counters to use for applications like Microsoft Active Directory, SQL or Exchange Server.
Download your free copy of WMI Monitor
Do you need additional help?
- For interpreting the WSH messages check Diagnose 800 errors.
- For general advice try my 7 Troubleshooting techniques.
- See master list of 0800 errors.
- Codes beginning 08004…
- Codes beginning 08005…
- Codes beginning 08007…
- Codes beginning 0800A…
Give something back?
Would you like to help others? If you have a good example of this error, then please email me, I will publish it with a credit to you:
If you like this page then please share it with your friends