Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
метод Select Case, динамический параметр, VBA, использование динамического параметра
 
Дорогие други, подскажите, как оптимизировать код?
Код
IF ...... THEN
Select Case Sheets("out").Cells(i, 3).Value
                Case 1
                    lvl1 = Sheets("out").Cells(i, 3).Value
                Case 2
                    lvl2 = Sheets("out").Cells(i, 3).Value
                Case 3
                    lvl3 = Sheets("out").Cells(i, 3).Value
                Case 4
                    lvl4 = Sheets("out").Cells(i, 3).Value
                Case 5
                    lvl5 = Sheets("out").Cells(i, 3).Value
                Case 6
                    lvl6 = Sheets("out").Cells(i, 3).Value
                Case 7
                    lvl7 = Sheets("out").Cells(i, 3).Value
                Case 8
                    lvl8 = Sheets("out").Cells(i, 3).Value
                Case 9
                    lvl9 = Sheets("out").Cells(i, 3).Value
            End Select

ELSE
               Sheets("in").Cells(k, 2).Value = lvl1
                Sheets("in").Cells(k, 3).Value = lvl2
                Sheets("in").Cells(k, 4).Value = lvl3
                Sheets("in").Cells(k, 5).Value = lvl4
                Sheets("in").Cells(k, 6).Value = lvl5
                Sheets("in").Cells(k, 7).Value = lvl6
                Sheets("in").Cells(k, 8).Value = lvl7
                Sheets("in").Cells(k, 9).Value = lvl8
                Sheets("in").Cells(k, 10).Value = lvl9
END IF
Срезы данных и функции КУБ()
 
Всем доброго дня!

Условие вопроса:
В excel создано подключение с именем "OLAP_Connection" которое возвращает в сводную таблицу 10 полей.
Select
fil_works.ACTION, /Cstr
fil_works.DT, /Cstr
fil_works.YD, /Cstr
fil_works.IS_IN_RSHB, /Cstr
fil_works.SEGMENT, /Cstr
fil_works.RESULT_MEET, /Cstr
fil_works.TYPE, /Cstr
fil_works.FIL, /Cstr
fil_works.KM, /Cstr
fil_works.THS_WEEK /Cdbl
FROM fil_works )


Сам Вопрос:
На основе этих таблиц построены срезы.
Нужно вывести это значение в отдельную таблицу с помощью КУБМНОЖ, КУБЭЛЕМЕНТ и на основании выбранных срезов написать простой запрос
SELECT THS_WEEK
FROM OLAP_Connection
WHERE fil_works.YD = Срез_YD

Всем спасибо, за ответ
VBA - стиль ячеек обычный
 
Добрый день!
Подскажите, как средством VBA сделать стиль ячеек на листе "Обычный" и применить действие "Назад".
Объясню зачем - при дублировании листа в сводных диаграммах слетают форматы чисел.
Выделяешь лист->применяешь стиль ячеек "обычный"->действие "назад". Все приходит в нормальный вид с нормальным форматом ячеек
Смена фильтров в сводной таблице через VBA, Отличие свойства .CurrentPage от .PivotItems
 
Всех приветствую!
Проблемка, необходимо через VBA менять выставленный фильтр в сводной таблице. В одной сводной таблице срабатывает свойство CurrentPage
Код
 .PivotTables("СводнаяТаблица5").PivotFields("Филиал").CurrentPage = Sheets("data").Cells(i, 1).Value 
В другой сводной таблице это же свойство вызывает ошибку, но срабатывает такая конструкция:
Код
.PivotTables("СводнаяТаблица6").PivotFields("Филиал").PivotItems(Sheets("data").Cells(i, 1).Value).Visible = True
Подскажите, как стандартизировать сводную таблицу, чтобы срабатывало везде одно свойство? И может кто знает, в чем отличие?
"отловить" на листе процедуру копирования VBA, VBA
 
Доброго времени суток!
Вопрос,
Можно ли с помощью VBA средств запретить на листе копирования?
Либо при переходе на лист отчищался буфер и  копировать было нечего?
Формула с применением СЧЕТЕСЛИ (диапазон;диапазон)
 
Добрый день! Есть тема Пустые строки в всплывающем списке, в котором приложена книга Ссылка, с очень интересным решением
Разбирая формулу не могу понять что делает функция в формуле поиска =СЧЁТЕСЛИ($L$1:L1;$K$2:$K$133).
Не понятно как работает критерий отбора. 2ой непонятный момент что делает добавление к общей формуле ($K$2:$K$133="")
Формула разбора:
Код
 =ЕСЛИ(ЕНД(ПОИСКПОЗ(0;СЧЁТЕСЛИ($L$1:L1;$K$2:$K$133)+($K$2:$K$133="";0));"";ИНДЕКС($K$2:$K$133;ПОИСКПОЗ(0;СЧЁТЕСЛИ($L$1:L1;$K$2:$K$133)+($K$2:$K$133="" );0)))
считать до выбранного значения (Формула)
 
Доброго всем времени суток!  
Нужна формула которая будет выполнять следующие критерии выборки(не макрос):  
Есть массив состоящий из цифр, значения которых больше 30  
После значений, которое больше 30, стоит ряд единиц. Нужно написать такую формулу, которая бы определяла после ряда единиц начало следующего числа >30 и если кол-во единиц больше 2, то ставила метку.  
 
Заранее всем спасибо, сорри за мой албанский!
сортировка листов (в названии листа дата формата "ДДММ")
 
Пояснительная записка:  
К примеру, лист с названием 2908(имя берется из названия файла), что подразумевает дату 29/08.  
--  
Вопрос:  
Как сделать, чтобы он сортировал сначала по месяцу, а потом по числу в заданном месяце?    
Условие:  
название книги должно оставаться в таком же формате "ДДММ"  
PS  
Заранее, за любую помощь премного благодарен!  
Было бы приятно, если бы код готовый выслали, вряд ли я первый с этим вопросом :-) , а то что-то голову долго ломаю, а поиском фуфло находит!  
Факультатив:  
Кто-нибудь из всемогущих модеров пишет макросы для Outlook, а то помощь нужна?? :-(
Как задать в листе рабочий диапазон?
 
Если откроете файл, то будет понятно, что я хочу. Интересно, как это сделать!?
проблемы с функцией Find помогите в чем проблема
 
Добрый день всем!  
 
Есть код:  
 
Sub One(Obj As String, iMonth As String, iYear As String)    
Dim X, Y  
 
 
iMonth = Left(iMonth, 3)    
iYear = Right(iYear, 2)  
 
'должен искать к примеру апр.10 в строке №1  
Set Y = ThisWorkbook.ActiveSheet.Range("1:1").Find(CStr(iMonth) & "." & CStr(iYear), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False)  
'Икс ищет, а Игрек не хочет! не знаю почему.  
 
Set X = ThisWorkbook.ActiveSheet.Range("D:D").Find(Obj, LookIn:=xlValues, LookAt:=xlPart, MatchCase:=False)  
'пробовал так но не помогает.  
'Set Y = ThisWorkbook.ActiveSheet.Cells.Find(What:="" & CStr(iMonth) & "." & CStr(iYear) & '"", LookIn:=xlValues, After:=Cells(1.1), LookAt:=xlPart, SearchOrder:=xlByRows, 'MatchCase:=False)  
 
 
End Sub
Объект ChartSpace
 
Добрый день!    
На форме есть объект ChartSpace, имеется 2 вопроса по работе с ним  
1. как убрать ошибку при загрузки книги "this application is about to initialize activex controls that might be unsafe..."  
Пробовал displayalerts в Workbook_Open не помогло.  
 
2. как обратится к данным объекта, то есть "вставить значения"  
спасибо!
(VBA) функция Find
 
как определить номер строки и столбца с помощью этой функции?
перехват ошибки #Н/Д
 
ActiveWorkbook.Worksheets("ФОТ+бонус").Cells(i, j).FormulaR1C1 = "=HLOOKUP(R[-" & k & "]C,'ФОТ+ЕСН + движ. резерва'!R" & FirstRow & "C2:R" & LastRow & "C" & LastCol & "," & k & " ,0) "
If ActiveWorkbook.Worksheets("ФОТ+бонус").Cells(i, j).Value = CVErr(xlErrNA) Then  
    ActiveWorkbook.Worksheets("ФОТ+бонус").Cells(i, j).Value = ""  
End If  
 
 
Помогите пожалуйста почему то type mismath пишет.    
Изначально хочу сделать проверку на наличие ошибки #Н/Д
Как удалить тему с вашего форума?
 
собно нужно удалить тему, либо прикрепленные файлы с вашего форума.    
Модераторы жду ответа!
пароль на лист(книгу)
 
Можно ли защитить(запаролить) как то отдельные элементы книги. Нужно запаролить скрытые листы(все без исключения), но чтоб макрос мог удалять их..
копи-паст не работает VBA
 
Помогите пожалуйста! Я новичок в VB и у меня не работает код. Пишет ошибку №9(Subscript out of range). не могу понять как исправить.  
Application.DisplayAlerts = False  
   Application.Workbooks.Open (path)  
       Application.ActiveWorkbooks(path).Sheets(1).Range("A1:H147").Copy 'пишет, что здесь ошибка  
         
Application.Workbooks(ipath).Sheets(strNameSh).Range("A1:H147").Paste  
           Application.ActiveWorkbooks(path).Close  
 
 
ipath(путь книги куда нужно копировать) задается во время определения формы    
то есть по моим соображениям ipath будет создаваться тогда,когда будет открываться книга  
 
Sub UserForm_Initialize()  
ipath = ActiveWorkbook.path + "\Gisto.xlsm"  
 
 
 
path(путь книги с которой нужно скопировать первый лист) задается так:  
 
MsgBox "в указаном листе должен быть один лист"  
Set fd = Application.FileDialog(3)  
   With fd  
       .AllowMultiSelect = False  
       .Show  
       ' Отображает путь  
           If .SelectedItems.Count > 0 Then    
           Me.TextBox1.Value = .SelectedItems(1) 'записывает текст в строку  
           Else  
           Exit Sub  
           End If  
   End With  
   path = fd.SelectedItems(1) ' глобальной переменной присваивает путь  
   End Sub  
 
 
Вроде все описал понятно.
количество оставшихся строк (VBA)
 
Проблемы с написанием кода.  
Есть таблица с листом "temp"  
нужно посчитать количество занятых строк.
поиск значений
 
есть 2 таблицы с данными, с одинаковыми фамилиями. Но во второй фамилий больше чем в первой. Нужно дополнить первую таблицу недостающими фамилиями.    
Надеюсь все понятно написал.
специальная вставка
 
как из этого  
ThisWorkbook.Sheets(strListName).Range(Me.ListBox2.List(i, 0)).Copy sh.Range(Me.ListBox2.List(i, 0))  
"специальной вставкой" значения вставлять?  
Либо, как из ячеек уже вставленных удалить формулы, чтоб значения только остались
Страницы: 1
Наверх