Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Office Excel
Войти
Регистрация
Восстановить пароль
 
19boom96
1 / 1 / 3
Регистрация: 27.11.2014
Сообщений: 218
Завершенные тесты: 1
1

Метод AutoFilter из класса Range завершен неверно

15.04.2019, 16:11. Просмотров 182. Ответов 5
Метки нет (Все метки)

C#
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
                Microsoft.Office.Interop.Excel.Application xlsApp = new Microsoft.Office.Interop.Excel.Application();
                Workbook xlsBook = xlsApp.Workbooks.Open(Convert.ToString(FileNameNew));
                Worksheet xlsSheet;
                xlsSheet = (Worksheet)xlsBook.Sheets[1]; // раздел 1 (лист 1)
                xlsSheet.Activate();
                var MyRange = "G2:G9000";
 
xlsSheet.Range["G2:G9000"].TextToColumns(xlsSheet.get_Range(MyRange, Type.Missing), XlTextParsingType.xlDelimited, XlTextQualifier.xlTextQualifierDoubleQuote, true, Type.Missing, Type.Missing, true, false, false, ",", FieldInfo: new object[,] { { 1, XlColumnDataType.xlGeneralFormat}, { 2, XlColumnDataType.xlDMYFormat} }, TrailingMinusNumbers: true);
 
 
                xlsSheet.Range["L1"].Formula = "=SUBTOTAL(109,R[1]C[-5]:R[8999]C[-5])";
                Directory.CreateDirectory(@"D:\testNew");
                
                xlsSheet.Cells.Replace("-1", "0", XlLookAt.xlPart, XlSearchOrder.xlByColumns, false, false, false);
                xlsSheet.Cells.Replace("-2", "0", XlLookAt.xlPart, XlSearchOrder.xlByColumns, false, false, false);
                xlsSheet.Cells.Replace("-.5", "0", XlLookAt.xlPart, XlSearchOrder.xlByColumns, false, false, false);
                xlsSheet.Cells.Replace(".5", "0,5", XlLookAt.xlPart, XlSearchOrder.xlByColumns, false, false, false);
 
                xlsSheet.Columns[8].Replace(" ", "01.01.2001", XlLookAt.xlPart, XlSearchOrder.xlByColumns, false, false, false);
                xlsSheet.Columns[8].ColumnWidth = (17.43);
                xlsSheet.Cells[1,8].value = "Дата";
                
                //1
                xlsSheet.Range["$A$1:$H$8521"].AutoFilter(1, Podrazdelenie, XlAutoFilterOperator.xlOr);
                xlsSheet.Range["$A$1:$H$8521"].AutoFilter(2, "=Начальник*", XlAutoFilterOperator.xlOr);
                xlsSheet.Range["$A$1:$H$8521"].AutoFilter(3, "=**Руководство**", XlAutoFilterOperator.xlOr);
                xlsSheet.Range["$A$1:$H$8521"].AutoFilter(6, "**Начальник **", XlAutoFilterOperator.xlOr);
                xlsSheet.Range["$A$1:$H$8521"].AutoFilter(8, "<=15.04.2019*", XlAutoFilterOperator.xlAnd);
решил добавить в фильтр дату.
строка:
C#
1
 xlsSheet.Range["$A$1:$H$8521"].AutoFilter(8, "<=15.04.2019*", XlAutoFilterOperator.xlAnd);
Но при добавлении выдаёт исключение. Без неё всё работает.


Код макроса:
Visual Basic
1
2
ActiveSheet.Range("$A$1:$H$8521").AutoFilter Field:=8, Criteria1:= _
        "<=15.04.2019", Operator:=xlAnd
не могу понять, почему вылетает исключение
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2019, 16:11
Ответы с готовыми решениями:

Метод Delete из класса Range завершен неверно
Доброго времени суток! Имеется следующий код: If NewWb.Sheets(j).Name = &quot;Прайс-лист&quot; Then ...

Ошибка: метод PasteSpecial из класса Range завершен неверно
Вот такой код: Set c = c.Offset(1, 0).CurrentRegion c.Cut Worksheets('Лист1').Activate...

Метод Open из класса WorkBook завершен неверно
такая вот ошибка, в чем дело не могу понять

Ошибка - Метод Select из класса WorkSheet завершен неверно
люди!!!! подскажите плиз такую вещь - обращаемся в excel из access при этом почему-то перестало...

ошибка "Метод paste из класса worksheet завершен неверно"
Private Sub CommandButton1_Click() Dim b As String Dim str As String b =...

5
pashulka
2876 / 1474 / 617
Регистрация: 01.12.2010
Сообщений: 2,917
15.04.2019, 16:33 2
Несколько вариантов в макросе :

Visual Basic
1
ActiveSheet.Range("A1:H8521").AutoFilter Field:=8, Criteria1:="<=04/15/2019"
Visual Basic
1
ActiveSheet.Range("A1:H8521").AutoFilter Field:=8, Criteria1:="<=" & CDbl(#4/15/2019#)
Visual Basic
1
ActiveSheet.Range("A1:H8521").AutoFilter 8, "<=" & CDbl(CDate("15.04.2019"))
0
19boom96
1 / 1 / 3
Регистрация: 27.11.2014
Сообщений: 218
Завершенные тесты: 1
15.04.2019, 16:35  [ТС] 3
ой ой ой..
тему не в том разделе создал...

Модераторы - перенесите в C#
0
pashulka
2876 / 1474 / 617
Регистрация: 01.12.2010
Сообщений: 2,917
15.04.2019, 16:39 4
Что, так не катит ?

Код
xlsSheet.Range["A1:H8521"].AutoFilter(8, "<=4/15/2019");
0
19boom96
1 / 1 / 3
Регистрация: 27.11.2014
Сообщений: 218
Завершенные тесты: 1
15.04.2019, 16:41  [ТС] 5
Цитата Сообщение от pashulka Посмотреть сообщение
Несколько вариантов в макросе :
мне бы в Visual Studio... разделом ошибся(

Добавлено через 1 минуту
Цитата Сообщение от pashulka Посмотреть сообщение
Что, так не катит ?
не катит

Добавлено через 22 секунды
Цитата Сообщение от pashulka Посмотреть сообщение
Что, так не катит ?
не катит
0
19boom96
1 / 1 / 3
Регистрация: 27.11.2014
Сообщений: 218
Завершенные тесты: 1
16.04.2019, 10:42  [ТС] 6
pashulka, оказалось надо прописывать так:
C#
1
2
var ActualDate = String.Format("<={1}/{0}/{2}", DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year);
xlsSheet.Cells[1, 8].AutoFilter(8,Criteria1: ActualDate, Operator: XlAutoFilterOperator.xlOr);
0
16.04.2019, 10:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2019, 10:42

Метод AutoFill из класса Range завершён неверно
Добрый вечер. Подскажите пожалуйста. Есть макрос который ищет пустую ячейку в строке и...

Ошибка метод AutoFill из класса Range завершён неверно
Почему строка, которая выделена ошибочна, там же нету ошибки. Private Sub CommandButton3_Click()...

Метод Range.AutoFilter (Excel)
Всем хорошего дня!!! На официальном сайте https://msdn.microsoft.com в описании метода пишут, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru