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

Страницы: 1
Функция Dir в Windows 7
 
Проблемка такая:  
В Windows 7 в Office 2010 конструкция, приведенная нижу, работает не так, как в Windows Xp:  
 
s = Dir(pyt & "*.jpg")  
Do While s <> ""  
 s = Dir  
Loop  
Где pyt, заданный путь к папке.  
 
В Xp ищет файлы в той папке, который указан в pyt. А в 7 ищет уровнем выше.  
 
Пример: задана переменная - pyt = "C:\1\2\"  
В Xp промотривает файлы в папке 2. В 7 просматривает файлы в папке 1.  
 
Может как-то перестроить конструкцию?
Ошибка 4605
 
Excel 2010  
 
Возникает ошибка 4605 - "Метод или свойства не доступны, поскольку буфер обмена пуст или содержит неверные данные" в VBA при ставки таблицы из Excel в Word такой строкой:  
 
wordApp.Selection.PasteExcelTable False, False, False, где wordapp объект Word  
   
Пробовал так - после ошибки код останавливаю, и пытаюсь через Ctrl+V вставить в Word - не выходит; такой ощущение что буфер пуст. Причем на листе Excel копируемая область показана (обведена мегающим диапазоном). НО! вставляю на любой лист Excel и чудесным образом буфер опять заполнился, но в word всталять все равно не хочет. Как быть?
Составить список файлов
 
Мне нужно составить список xls файлов (занести в массив их местоположение), чтобы потом с ними работать.Структура такая: Папка -> множество папок-> в каждой папке файлы xls. Выбираю верхную папку через диалог:  
 
       With Application.FileDialog(msoFileDialogFolderPicker)  
            .InitialFileName = ActiveWorkbook.Path  
            .Show  
            Counts = .SelectedItems.count  
            If .SelectedItems.count > 0 Then  
               k = 0  
                   pyt = .SelectedItems.Item(1) & "\"  
                   Folders = Dir(pyt, vbDirectory)  
                   Do While Folders <> ""  
                       If Folders <> "." And Folders <> ".." Then  
                           Files = Dir(Folders & "\*.xls", vbNormal)  
                           Do While Files <> ""  
                               k = k + 1  
                               XF(k).NN = Files  
                               XF(k).pyt = pyt & Folders & "\" & Files  
                               Files = Dir  
                           Loop  
                       End If  
                       If Folders <> "." And Folders <> ".." Then Folders = Dir(pyt, vbDirectory)  
                       Folders = Dir  
                   Loop  
               Counts = k  
            End If  
       End With  
 
но возникла проблема с командой Dir (а точнее в строчке "Folders = Dir"), после нахождение файлов в первой папке, программа начинает заново перебирать папки. Раньше я обходил эту проблему внесением в массив название папок, а потом цикл-проверку по массиву, но здесь не пойдет, т.к. количество папок зашкаливает за 15000.  
 
Подскажите решение.
Удалил меню
 
Случайно удалил вершнее меню:  
 
Вот таким образом  
 
Dim i As Variant  
For Each i In Application.CommandBars(1).Controls  
   i.Delete  
Next i  
 
можно ли их вернуть, не переставляя офис  
 
На деле хотел сделать их невидимыми, а не удалять
Метод быстрой сортировки
 
Обычно пользуюсь пузырьковым методом сортирорки данных, т.к. данных не много. Вот понадобилось, чтобы сортировалось побыстрее; выбрал метод быстрой сортировки - разобрался и написал маленькую програмку. Но вот беда - при больших данных выдает ошибку №28: "Out of stake space". Подскажите решение проблемки.  
 
Приклеплен файл.  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
WebBrowser
 
При работе с компонентом WebBrowser Excel далеко не сразу освобождает память, например если через цикл прогнать страниц 100    
 
For i =1 to 100  
  WebBrowser.Navigate http://63.ru  
  Do Until WebBrowser1.ReadyState = READYSTATE_COMPLETE  
     DoEvents  
  Loop  
next i  
 
DoEvents не помогает
Масиив
 
есть диначический безразмерный массив:  
 
dim arr_massiv() As Double  
 
в ходе выполнения кода размечивается:  
 
ReDim arr_massiv(1 to 10)  
 
но попадется у меня кусок кода, когда еще разметка массива нет и при цикле возникает ошибка  
 
for i = 1 to application.count(arr_massiv())  
  a = arr_clear(i)  
next i  
 
можно ли сделать проверку на то что массив еще не размечен?
Максимальная значение
 
для массива можно выдирать Max, Min  
 
Dim Arr(1 to 100) as Double  
 
With Arr  
 mx = .Max  
 mi = .Min  
En With  
 
но для Range не получается, выдает ошибку на отсутствие метода  
With Range(cells(1,1),cells(10,1))  
 mx = .Max  
 mi = .Min  
En With  
 
можно ли найти Max, Min для Range в одно-два действия??(БЕЗ перебора, сортировки или загона в массив значений Range). P.S обратите на слова в скобках.
Overflow
 
Есть переменная типа Variant, ей присваится значение. В некоторых случаях при присвоение, это значение вылазеет за пределы допустимых (пример степени - 1975 ^ 98). Вопрос  - как  предсказать, обойти, не дать попытки присвоиться не вызывая Run-time Error? (Не используя On Error...)
Скрытые именнованные ячейки
 
Вопрос знающим  
Допустим есть долгоживущая и изменяюшщая книга Excel, за все ее историю в нее добаляются разные листы, удаляются , изменяются, сохраняются.  
В этих листах могут быть именнованные ячейки.  
И вот недавно обнаружил, что остались остаточные имена! Т.е. ,если пройстись по меню Вставка->Имя->Присвоить, то там их нет. Но при использования нехитрого макроса:  
 
For Each a In ActiveWorkbook.Names  
   Debug.Print a.Name  
Next  
 
   я обнаружил много мусора. Вопрос - почему в меню не отображаеться этот мусор?  
прилагаю пример  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Webbrowser и Javascript
 
С помощью Webbrowser пытаюсь находить нужное на Yandex-карте; находить-то нахожу, однако мешается окошко информации об объекте появляющие после загрузки страницы, и хотелось бы еще "свернуть колонку" (серая стрелочка слева от карты). Не могу получить управление этими элементами и через вызов команд Call WebBrowser1.Document.parentWindow.execScript() не получается. Возможно есть какое-то другое решение, подскажите пожалуйста. Прикреплен пример.
Проблема с обновлением вебзапроса
 
веб-запрос:  
Set WebQ = Activesheet.QueryTables.Add(Connection:="URL;" & "любой сайт", Destination:=Range("A1"))  
With WebQ  
.Name = ""  
.FieldNames = True  
.RowNumbers = False  
.FillAdjacentFormulas = False  
.PreserveFormatting = True  
.RefreshOnFileOpen = False  
.BackgroundQuery = True  
.RefreshStyle = xlInsertDeleteCells  
.SavePassword = False  
.SaveData = True  
.AdjustColumnWidth = True  
.RefreshPeriod = 0  
.WebSelectionType = xlEntirePage  
.WebFormatting = xlWebFormattingNone  
.WebPreFormattedTextToColumns = True  
.WebConsecutiveDelimitersAsOne = True  
.WebSingleBlockTextImport = False  
.WebDisableDateRecognition = True  
.WebDisableRedirections = False  
End With  
 
WebQ.Refresh BackgroundQuery:=False - при обновление иногда возникает ошибка и программа останавливает свое действие, когда либо сайт задан не верно, либо по техничеким причинам (например кончился трафик), либо не получается получить информацию с таблиц. Обработать ошибку ,например такими командами как iserror() не получается, т.к. ошибка идет на уровне объект QueryTables. Ее обратка жижненно важна для программы. Подскажите как решить эту проблему.
Работа с элементами веб-страницы через WebBrowser
 
Пытаюсь через WebBrowser работать с формой на веб-странице .Но к одному элементу ни как не могу обратиться , такое ощущение что он не пренадлежит к форме.  
 
  Set Wbform = WebBrowser1.Document.forms(Val(4))  
  For Each el In Wbform  
       If el.ID = "i_AdvPerPage" Then el.Value = 100: Exit For  
  Next el  
 
"i_AdvPerPage" - количество листов на даннной форме, по умолчанию = 50  
 
в html коде обнаружил следующие    
$('#i_AdvPerPage').change(function() {  
realty.setCookie('list_col_pp', this.value, 'Thu, 01-Jan-2019 00:00:01 GMT','/');realty.requestPage('/realty/sell/commerce/office/1.php?1order=DateUpdate&dir=desc&price_unit=1&expand=0&PriceUnit=1­');  
 
возможно он через скрипт работает отдельно от формы передаваю данные в Cookie  
 
Если кто-ниб знает решение этой интересной проблемы - поскажите  
Приклеплен файл (загрузка веб-страницы жрет немного ресурсов, доверенный, без вирей)
Страницы: 1
Наверх