|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Возник вопрос.У меня есть ОТЧЕТ и ИСПОЛ_ФАЙЛ. У меня есть отфильтрованная таблица в ИСПОЛ_ФАЙЛ. Мне нужно итог (количество по столбцу)с этой таблицы вытащить в ОТЧЕТ. Потом внвь отфильтровать таблицу с ИСПОЛ_ФАЙЛ и слудующие итоги вновь в другую ячейку все того же ОТЧЕТА. Как это сделать. Большое спасибо за помощь.) не могу делать формулами, так как очень большой обем файлов, которые используються в отчете. Их 6 штук. И мне надо, что бы по очереди открывались файлы и сортировались и итоги вписывались в отчет.( фильтрация для Casco Sub Sort_Casco() ActiveSheet.ListObjects("Лист3").Range.AutoFilter Field:=5, Criteria1:="Casco" End Sub теперь нужна функция которая будет брать отсортированные данные итог по количеству в столбце 5 и итог по сумме в столбце 2 и заносить в другую книгу. Именно значения, а не формулу! Т.к. далее мне нужно сортировать по следующему критерию. фильтрация для Other Sub Sort_Other() ActiveSheet.ListObjects("Лист3").Range.AutoFilter Field:=5, Criteria1:="Other" End Sub Кто подскажет может это еще можно сделать в цикле? Прикрепляю файлы Книга 3 и Книга 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2011, 16:38 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, ИМХО использовать здесь фильтры это гемор. Проще вытянуть данные с помощью SQL-запроса: У меня Office 2003, так что вам придётся немного поправить под себя. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2011, 20:23 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, Спасибо большое. Только у меня возник еще один вопросик. Как включить еще два фильтра по Дата настання страхового випадку и Дата реєстрацiї страхового випадку в Книге 4. К примеру Дата настання страхового випадку>1/09/2009 и Дата реєстрацiї страхового випадку> 1/01/2010. Тогда по Сasco кол-во 2 и сумма 8393,35. Я просто вообще зеленка в SQL. Спасибо за подмогу. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 11:12 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Да еще вопросик. Количество посчитано, а вот как считать сумму Резерв RBNS на кiнець перiоду? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 12:48 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Помогите новичку пжл. Спасибо ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 14:38 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Подскажите, что не правильно пишу? И можно ли так писать для добавления условий в запрос Sub test() Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Set cnn = New ADODB.Connection Set rst = New ADODB.Recordset Dim strSQL As String Dim strCriterion As String Dim strField As String Dim strRange As String Dim strPath As String Dim strOperator1 As String Dim strOperator2 As String Dim strOperator3 As String strOperator1 = "=" strOperator2 = ">" strOperator3 = ">" strPath = "c:\Gorokh\Report\Книга4.xls" Dim x As Integer strField1 = "segment вид UNIQA" strField2 = "Дата настання страхового випадку" strField3 = "Дата реєстрацiї страхового випадку" strCriterion1 = "Casco" strCriterion2 = 40179 strCriterion3 = 40179 strRange = "" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & strPath & ";" & "Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""" strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" and [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" and [" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" x = rst.Fields(0) Debug.Print x rst.Close cnn.Close Set rst = Nothing Set cnn = Nothing End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 17:02 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikчто не правильно пишу? а что неправильно выходит? какая ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 17:04 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, Присылаю все скопированное, догадываюсь, что не правильно пишу ту часть где указываються критерии. С одним можно так, а с несколькими наверное не верно. Там где выделила синим выделяет крассным, когда пишу в коде Option Explicit Sub AddReferences() '--------------------------------------------------------------------------------------- '--------------------------------------------------------------------------------------- On Error Resume Next 'Name: ADODB 'Description: Microsoft ActiveX Data Objects 2.8 Library ThisWorkbook.VBProject.References.AddFromFile ("C:\Program Files\Common Files\System\ado\msado15.dll") ThisWorkbook.VBProject.References.AddFromGuid GUID:="{2A75196C-D9EB-4129-B803-931327F72D5C}", Major:=2, Minor:=8 End Sub Function GetData(strPath As String, strField1 As String, strOperator1 As String, strCriterion1 As String, strField2 As String, strOperator2 As String, strCriterion2 As String, strField3 As String, strOperator3 As String, strCriterion3 As String) As Integer Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Set cnn = New ADODB.Connection Set rst = New ADODB.Recordset Dim strSQL As String cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & strPath & ";" & "Extended Properties=""Excel 9.0;HDR=Yes;IMEX=1""" ' и это не работает strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" and [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" and [" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" rst.Open strSQL, cnn GetData = rst.Fields(0) rst.Close cnn.Close Set rst = Nothing Set cnn = Nothing End Function Sub test() Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Set cnn = New ADODB.Connection Set rst = New ADODB.Recordset Dim strSQL As String Dim strCriterion As String Dim strField As String Dim strRange As String Dim strPath As String Dim strOperator1 As String Dim strOperator2 As String Dim strOperator3 As String strOperator1 = "=" strOperator2 = ">" strOperator3 = ">" strPath = "c:\Gorokh\Report\Книга4.xls" Dim x As Integer strField1 = "segment вид UNIQA" strField2 = "Дата настання страхового випадку" strField3 = "Дата реєстрацiї страхового випадку" strCriterion1 = "Casco" strCriterion2 = 40179 strCriterion3 = 40179 strRange = "" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & strPath & ";" & "Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""" strSQL = "SELECT * table Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" and [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" and [" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" ' как написать запрос для того что бы отбирало количество по segment вид UNIQA, а также по Дата настання страхового випадку>1/1/2010 и Дата реєстрацiї страхового випадку>1/1/2010 одновременно? rst.Open strSQL, cnn x = rst.Fields(0) Debug.Print x rst.Close cnn.Close Set rst = Nothing Set cnn = Nothing End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 17:29 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikТам где выделила синим выделяет крассным, когда пишу в коде красным выделяет ошибки синтаксиса. Подозреваю, что ты пишешь это в несколько строк так же, как и выкладываешь сюда. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 17:38 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Подскажите все таки где синтаксическая ошибка. Где-то встроке ниже... И вообще скажите сам запрос верный для трех критериев? Буду очень и очень благодарна. strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" and [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" and [" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 18:09 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, нет пишу в одну, но выдает синтаксическую ошибку, когда пишу несколько критериев. я не знаю точно правил записи в SQL, поэтому и спрашиваю ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 18:11 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikVikVikVik, нет пишу в одну, но выдает синтаксическую ошибку, когда пишу несколько критериев. я не знаю точно правил записи в SQL, поэтому и спрашиваю ты запуталась в кавычках. давай все-таки в одной ветке ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 18:24 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
У вас там были лишние кавычки перед and: strCriterion1 & "'" and [" Код: 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. 35. 36. 37. 38. 39. 40.
Debug.Print strSQL: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2011, 20:22 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
О, Спасибо Всем Работает!!! Только вот функция пользовательская в книге3 выдает ошибку #ЗНАЧ! =GetData("c:\Gorokh\Report\Книга4";"segment вид UNIQA";"=";A6;"Дата настання страхового випадку";">";40092;"Дата реєстрацiї страхового випадку";">";40179) Еще раз ОГРОМНОЕ СПАСИБО!!! Function GetData(strPath As String, strField1 As String, strOperator1 As String, strCriterion1 As String, strField2 As String, strOperator2 As String, strCriterion2 As String, strField3 As String, strOperator3 As String, strCriterion3 As String) As Integer Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Set cnn = New ADODB.Connection Set rst = New ADODB.Recordset Dim strSQL As String cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & strPath & ";" & "Extended Properties=""Excel 9.0;HDR=Yes;IMEX=1""" strSQL = "SELECT * from Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" And " [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" And "[" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" rst.Open strSQL, cnn GetData = rst.Fields(0) rst.Close cnn.Close Set rst = Nothing Set cnn = Nothing End Function ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 11:15 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Выполни эту же строку в Immediate-окне и посмотри, какую ошибку выдает. Только запятые вместо точек с запятой и вместо A6 - конкретное значение подставь Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 11:39 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Выдает ошибку Type mismatch. Вообщем пишет ошибка 13. В Debuge выделяет строку strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" And " [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" And "[" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 13:17 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikВыдает ошибку Type mismatch. Вообщем пишет ошибка 13. В Debuge выделяет строку strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] WHERE [" & strField1 & "]" & strOperator1 & "'" & strCriterion1 & "'" And " [" & strField2 & "]" & strOperator2 & "'" & strCriterion2 & "'" And "[" & strField3 & "]" & strOperator3 & "'" & strCriterion3 & "'" я уже отвечал - в этой строке проблема с "and". Если этот And должен быть внутри sql-запроса - то он должен быть и внутри кавычек ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 14:13 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, Cпасибо, виновата там подправила, но возникла другая ошибка. :( compile error expected: expression ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:15 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:24 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Ну может всё-таки покажете наконец Debug.Print strSQL ?? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:28 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikShocker.Pro, Cпасибо, виновата там подправила, но возникла другая ошибка. :( compile error expected: expression Блин, ну сколько можно клещами вытягивать?????? Поправила - ну покажи, что напоправила!!!!!!!!!!!!!!!!!! Нам угадать надо что ли? GwaНу может всё-таки покажете наконец Debug.Print strSQL ?? да не может она показать, не проходит у нее компиляция этой строки, нее может она никак с кавычками разобраться ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:32 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Спасибки. :) Уже как-то работает.))) Правда выводит нули в самой в функции в листе. Если нажимаю Enter, то вновь стоит #ЗНAЧ! и не пойму почему выводит нули, если все даты подправила и в коде и в самой функции на листе? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:47 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, *смайлик, бьющися головой об стену* Потому что где-то что-то неправильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:49 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Вам бы в партизаны: хрен бы враги из Вас что-нибудь вытянули .. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:52 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Код: 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. 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:55 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Я не партизаню. Простно наверное моих знаний и навыков маловато... Это мой первый запрос в жизни...))) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 15:58 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Ну и как мы без самой книги посмотрим, почему там нули? Ладно, мне что-то надоела эта ветка, если автор себе не хочет помочь, нкто ему не поможет. ЗЫ: Для оформления кода используйте тэги SRC, а не FIXED и почитайте правила форума ЗЗЫ: Чтобы нормально вставлять русский текст на форум - почитайте эту тему: Вставка из буфера русского текста - крокозяблы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 16:05 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Вот две книги. Не топите :) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 16:12 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Помогите, а то без ваших советов совсем как-то плохо.... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2011, 16:27 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, Если меняю на "Excel 9.0" то все равно не работает для 2007 Excel. ((( В 2007 не определяет пользовательскую функцию... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 13:33 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Уговорили, сейчас установлю Office 2007 на VM и попробую что-нибудь придумать. А вы, чтобы не терять зря время, можете пока почитать вот эту статью: http://forums.asp.net/t/1169005.aspx/1?How+to+read+from+excel+2007+format+file+ ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 15:49 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, Золотой Вы человек. :) Читала статью. Попыталась вместо Provider=Microsoft.Jet.OLEDB.4.0 написать Provider=Microsoft.Jet.OLEDB.12.0. Для этого по ссылке попыталась скачать файл. http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7554f536-8c28-4598-9b72-ef94e038c891 Он скачивается, однако не запускается... Поэтому мои строки пока бесполезные... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 17:48 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Какой ещё Microsoft.Jet.OLEDB.12.0? Вот же Connection String:авторTry using the connection string like below.. strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & serverPath & ";" & _ "Extended Properties=""Excel 12.0 Xml;HDR=NO;IMEX=1""" Осталось только немного подправить под себя (вместо HDR=NO у нас HDR=YES): Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 18:51 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, Это понятно, что если есть заголовки? то HDR=YES/ Не запускает test : Несоответсвие типов данных в выражении условия отбора ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 19:12 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Вот последний мой вариант... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 19:16 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVik, Раскоментируем строчки с условиями и запишем дату вот в таком виде Код: plaintext 1. 2.
Код: plaintext 1. 2. 3.
Debug.Print x Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2011, 20:00 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, А вот эти кавычки тоже (насколько понимаю) не нужны? strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] " & "WHERE [" _ & strField1 & "]" & strOperator1 & " ' " & strCriterion1 & " ' and [" _ & strField2 & "]" & strOperator2 & "" & strCriterion2 & " and [" _ & strField3 & "]" & strOperator3 & "" & strCriterion3 & "" Все равно выдает : число содержит синтаксическую ошибку в выражении запроса И еще вопрос-это я считала количество записей, а как вот эту сумму, что выделена красным в Книге4 подтягивать? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 13:45 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, *смайлик, бьющися головой об стену* ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 16:20 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
CurskyVikVikVik, Раскоментируем строчки с условиями и запишем дату вот в таком виде Код: plaintext 1. 2.
Код: plaintext 1. 2. 3.
Debug.Print x Код: plaintext 1.
Было нашла а потом вновь закрыла окно, которое вы вставили внизу. Какими клавишами оно вызывается или где? Спс ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 17:14 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikCursky, А вот эти кавычки тоже (насколько понимаю) не нужны? strSQL = "SELECT Count([" & strField1 & "]) FROM [Лист3$A3:L1000] " & "WHERE [" _ & strField1 & "]" & strOperator1 & " ' " & strCriterion1 & " ' and [" _ & strField2 & "]" & strOperator2 & "" & strCriterion2 & " and [" _ & strField3 & "]" & strOperator3 & "" & strCriterion3 & "" Все равно выдает : число содержит синтаксическую ошибку в выражении запроса И еще вопрос-это я считала количество записей, а как вот эту сумму, что выделена красным в Книге4 подтягивать? Та шо ж такое, ну? Вот горе мне с вами. То были нужные кавычки, не надо их удалять. Чтобы вычислить сумму, вместо Код: plaintext
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 22:44 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, Спасибо за кавычки :) Не знаю как бы и жила без Вас. К сожелению выдает все ту же ошибку((( ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2011, 12:05 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, СПАСИБО БОЛЬШОЕ Ха-ха-ха получилось Только вот не могу понять как вот красную часть написать для strSQL2. Дело в том, что у меня либо strSQL1 возвращает либо strSQL2. А когда пишу и то и другое, то пишет: Операция не допускается, оесли обект открыт 3705 ошибка Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2011, 16:23 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Cursky, И это получилось. Просто две фунции тест написала ( test1 и test 2) Теберь мыслю более широко. Как сделать так, чтобы Casco и другие критерии задавались не в коде, а в листе 4 Книги 3. Что бы не лезть каждый раз. И можно было протянуть и соотвественно брались даты с листка и виды страхования и вставлялись в мою пользовательскую функцию... Буду очень благодарна ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2011, 17:56 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikТеберь мыслю более широко. Как сделать так, чтобы Casco и другие критерии задавались не в коде, а в листе 4 Книги 3. Что бы не лезть каждый раз. Как всегда, это уже обсуждалось и не раз... Разберите пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2011, 19:10 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
AndreTM, Код: 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. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
Подскажите можно ли писать в запросе strCriterion1? У меня выводит синтаксическую ошибку в критерии1. Как написать функцию так, что бы критерий я могла задавать на листе а не в коде? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 13:46 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
убрать кавычки вокруг нее ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 14:34 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Proубрать кавычки вокруг нееи ведь в этой же строке используется еще три значения других переменных. Неужели так сложно увидеть? Ведь даже цветом другим выделено. Внутри кавычек находится ТЕКСТ, который будет передан без изменений. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 14:35 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, А можно пример ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 14:38 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, не вижу :( ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 14:47 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikА можно пример Код: vbnet 1. 2. 3. 4. 5. 6.
Вы понимаете разницу между первым и вторым вариантом и что в каждом случает окажется в переменной K ? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 15:00 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
В первом варианте будет строка qqq Во втором варианте будет строка Test Это обе строки. 'вариант 1 К= "qqq" 'вариант 2 K = "Test" ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 15:12 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikВ первом варианте будет строка qqq Во втором варианте будет строка Testзамечательно, а теперь смотрим сюда: Код: vbnet 1.
и думаем по аналогии, что же окажется в переменной strSQL1 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 15:14 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, я бы в этой записи убрала strSQL1 = strOperator1 & "& strCriterion1 &" ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 15:20 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikя бы в этой записи убралам-да. Я уж попробую добить урок до конца Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
что по вашему будет в переменной K в варианте 3 и 4? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 15:37 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, qqqqqq 'вариант 3 qqqTest 'вариант 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:16 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
[quot Shocker.Proм-да. Я уж попробую добить урок до конца спасибо большоЕ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:21 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
VikVikVikспасибо большоЕтак что, ясно, в чем ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:29 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, не-а ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:31 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Shocker.Pro, раскройте уже тайну)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:33 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Код: vbnet 1.
Что будет в этом случае в переменной strSQL1? А что должно быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:33 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > не-а ))) :) Добавь после этого Код: vbnet 1. 2.
эту строку: Код: vbnet 1.
и посмотри что получяется Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:33 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, Ага спасибо за подсказку strSQL1 = "SELECT Sum([" & strField1 & "]) FROM [зачислено$A3:bu10000] " & "WHERE [" _ & strField2 & "]" & strOperator1 & "" & strCriterion1 & "" однако зараза пишет: Отсутствует одно или несколько требуемых параметров 2. еще такой вопросик. а если мне нужно что бы менялся мой критерия, то я должна просто его закоментировать, а в параметрах функции указать. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:39 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > однако зараза пишет: > Отсутствует одно или несколько требуемых параметров Покажи и нам результат Код: vbnet 1.
> 2. еще такой вопросик. а если мне нужно что бы менялся мой критерия, то я должна просто его закоментировать, а в > параметрах функции указать. Вот этого я не понял. В какой функции? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 16:49 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, 1.приложила файлик 2. Хочу пользовательскую функцию которая считала бы сумму по кретерию, который есть на листе (таких критериев целый столбец) Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:09 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, вот еще перый мсжбокс ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:14 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > 1.приложила файлик МаладЭц! Картинка в вордовском файле :) И что не понятно в картинке? У тебя закоментировано заполнение переменной strCriterion1 и поэтому у тебя запрос получается вида: Код: sql 1.
Естетсвенно тебе скажут, что не могЁм сравнить field1 с непонятно чем. > > 2. Хочу пользовательскую функцию которая считала бы сумму по кретерию, который есть на листе (таких критериев > целый столбец) Ну типа того. Я-бы Integer заменил на Double, а так вроде нормально. За исключением твоей изначальной проблемы, с которой ты и написала сюда :) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:15 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, и что номер счета мне текстом делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:17 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, так и так у меня тип Критярия стоит строка ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:18 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > Игорь Горбонос, > вот еще перый мсжбокс Тэкс, для получения текста сообщений можно воспользоватся комбинацией клавишь Ctrl+Shift+C ИЛИ дописываешь в нужном месте программы Debug.Print strSQL1, перед запуском нажимаешь Ctrl+G(появляется Immediate Window) и после исполнения макроса копируешь из Immediate Window то что туда вывелось при помощи Debug.Print. Так-же есть ещё варианты получения нужного текста, но это оставляю тебе на самоизучение :) Ты главное не бойся и пробуй тыкать мышкой в разных окнах(в некоторых можно даже значения переменных поменять во время отладки макроса) в неожиданных местах Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:23 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > так и так у меня тип Критярия стоит строка И что, что строка? Строка - это просто тип данных, который может содержать переменная, не более того. По умолчанию такие переменные содержат пустую строку. В запросе строка "заворачивается" в одинарные кавычки. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 17:27 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, Спасибо)) в дебаге все считает. А вот в листе все никак =Avans("C:\Documents and Settings\vgorokh\Рабочий стол\АВАНС\аванс.xlsm"; "Сумма"; "Счет Б";"="; C2) пишет value ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 18:12 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, Вот к примеру ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 18:24 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, СПАСИБО ВСЕ ПОЛУЧИЛОСЬ Хочу узнать такой вопрос. (я точно знаю, что ето возможно так как делала когдато) Какие свойства нужно включать и какой кусок кода можно написать, что бы моя пользовательская функция была видна во всех книгах при открытии Excel. Спасибо :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 19:18 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > Игорь Горбонос, > СПАСИБО ВСЕ ПОЛУЧИЛОСЬ Хм, а у меня нет :) > Какие свойства нужно включать и какой кусок кода можно написать, что бы моя пользовательская функция была видна > во всех книгах при открытии Excel. Нужно положить его в личную книгу макросов, которая находится в файле personal.xls(или каке там сейчас расширение) :) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2012, 20:20 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, Спасибо :) Код: 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. 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:00 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь ГорбоносПодскажите где в типах ошибаюсь.... выводит Data type mismatch in criteria expression ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:02 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > Игорь ГорбоносПодскажите где в типах ошибаюсь.... > выводит Data type mismatch in criteria expression strCriterion2 = это число, соответственно в запросе эта часть условия должна выглядеть так: Код: sql 1.
и сравни как она у тебя выглядит. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:14 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос,даже если так то все равно выводит ту же ошибку. в критерии 2 ставлю дабл, но выводит все то же :( Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:27 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, спасибо )) все нашла в х1 надо было дабл поставить))) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:30 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, нет когда снимаю коментарии с условия вере то вновь не верно((( ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:31 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
Игорь Горбонос, вот не могу понять почему не ладиться с типами данных. проблема по моему только в них ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2012, 19:45 |
|
Фильтрация в Vba
|
|||
---|---|---|---|
#18+
> Автор: VikVikVik > Игорь Горбонос, > вот не могу понять почему не ладиться с типами данных. проблема по моему только в них Потому, что нужно было переписать запрос так: Код: vbnet 1.
, выполнить его и посмотреть какого типа в рекордсете поля, и там было-бы видно, что field номер 2 имеет тип adDouble и имя "Счет А", хотя аналогичное поле с именем "Счет Б" имеет тип adWarChar. После чего переходим в файл и смотрим формат ячеек в столбце "Счет А", а он там "числовой". Поэтому вылетает с ошибкой, в условии номер счета идет как текстовый, а сам столбец имеет тип дабл, вот на это несоответствие и ругается. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2012, 00:37 |
|
|
start [/forum/topic.php?all=1&fid=60&tid=2158056]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
93ms |
get tp. blocked users: |
2ms |
others: | 356ms |
total: | 558ms |
0 / 0 |