Добрый день, есть список страниц в excel, которые формируются по одному и тому же принципу, нужен акрос, который будет поочередно открывать страницу, копировать оттуда определенный раздел по div class, вставлять данные в исходный excel в соседний столбец, и далее для следующей строчки в исходном excel тоже самое: открыть страницу, скопировать нужный раздел, вставить в excel...
Парсинг определенного div class на страницах, Парсинг div class
выгрузка лога в текстовый файл, перед выходом из книги сохранять значения некоторых ячеек и комментарий, введенный пользователем, в текстовый файл
11.06.2014 16:42:28
Добрый день, есть книга, которая производит определенные расчеты, стоит задача, чтобы перед закрытием она писала в текстовый файл, расположенный в той е папке, логи вида:
дата/пользователь win/пользователь excel/значение ячейки1/значение ячейки2/значение ячейки .../значение ячейки 5/комментарий пользователя пример: 11.06.2014/tester/tester/125/136/0.01/36 месяцев/21.06.2013/расчет варианта 1 Соответственно, при следующем открытии excel файла, расчетах, закрытии, и введенном комментарии пользователем должна будет добавляться новая строка в текстовый файл Бюджет 700 руб., оплата только на электронные кошельки (яндекс, киви, вебмани и прочие) Откликнувшихся прошу писать на почту, обсудим детали. Благодарю за внимание =) ADD: Извините, забыл указать ограничения( Есть некоторые ограничения: 1) пользователи (в т.ч. и я) работаем на vdi (виртуальные рабочие столы), есть ограничения на доступ к файловой системе (shell.execute естественно не работает, но vb scripts работают (проверил с помощью, файлов vbe, т.к. vbs файлы естественно запрещены политиками), текстовые файлы создаются, а т.к. в excel можно использовать команды vbs, да и язык очень близок, думаю из excel файлы должны создаваться (не проверено) 2) ник пользователя win и ник пользователя excel - доступ есть 3) код должны быть универсален (пользователи работают как на office x32, так и на x64, версии excel от10 до 14) 4) если файл логов закрыт в н.в. для записи (открыт пользователем, используется другой программой) должно выдаваться предупреждение, что книга пока не закрывается и попыткой закрытия через 1 минуту с записью в файл логов
Изменено: |
|
|
проблема с макросом после перехода на office 2010, перестала работать часть макроса с именем книги и поиском решения
первая пятница месяца (формула), определение первой пятницы в месяце
Замена функций из пакета анализа макросом в разных локалях excel
28.03.2013 09:53:21
Добрый день, уважаемые форумчане. Все мы знаем, что файл с формулами, созданный в русской версии excel, прекрасно работает в других версиях, в частности в английской. Т.е. функции, например, СУММ, СРЗНАЧ и т.д. автоматически меняются на SUMM, AVERAGE и т.д. Однако возникла проблема с функциями из пакета анализа, в частности, ДАТАМЕС (EDATE) и ЧИСТВНДОХ (XIRR), которые не заменяются excel в зависимости от локали excel.
Соответственно, подскажите пжл макрос, который бы: 1) определял локаль excel (в моем конкретном случае либо русская либо английская) 2) в зависимости от локали заменял функции ДАТАМЕС (EDATE) и ЧИСТВНДОХ (XIRR) Заранее благодарю! |
|
|
Импорт псевдо-таблицы в Excel
Объединение ячеек по границе + соединение данных построчно
19.02.2011 11:51:42
Добрый день! На этом форму мне помогли решить проблему с объединением данных по критерию границы, при этом данные объединялись через команду Merge. Помогите усовершенствовать макрос, чтобы данные объединялись также по границе + данные соединялись построчно.
Исходные данные, макрос и то, что должно получится - во вложенном файле. |
|
|
Макрос объединения ячеек по критерию границы
14.12.2010 10:01:40
Добрый день! Подскажите пжл макрос объединения ячеек в столбце по критерию наличия нижней границы ячейки (т.е. выделенная граница ячейки служит обозначением конца для объединения текущей ячейки и началом для объединения следующей). Пример и то, что должно получиться на выходе - см. приложенный файл.
|
|
|
значение n-oй строки в ячейке
Конвертация bas2vbs
26.12.2008 13:15:25
Есть макрос вида:
Sub test() Dim iPath As String Dim fs As FileSearch Dim last As Date, prev As Date iPath = ThisWorkbook.Path prev = CDate("1/1/1980") With Application.FileSearch .NewSearch .LookIn = ThisWorkbook.Path .SearchSubFolders = False .Filename = "*.xls" .MatchTextExactly = False .FileType = msoFileTypeExcelWorkbooks End With With Application.FileSearch If .Execute() > 0 Then Set fs1 = CreateObject("Scripting.FileSystemObject") For i = 1 To .FoundFiles.Count Set f = fs1.GetFile(.FoundFiles(i)) last = CDate(f.DateLastModified) If last > prev Then prev = last: fn = .FoundFiles(i) End If Next i Workbooks.Open Filename:=fn Else MsgBox "В папке " & iPath & "XLS файлов не найдено", 48, "Внимание" End If End With End Sub Сохранен на винте в виде bas файла Необходимо конвертнуть bas2vbs. Нашел в инете скрипт: Optiom Explicit Dim oFS Dim oFileIn Dim oFileOut Dim sFilePathIn Dim sFilePathOut Dim sLineText sFilePathIn = InputBox("Enter Name of File to convert") sFilePathOut = Left(sFilePathIn, Instr(sFilePathIn, ".")) & "vbs" set oFS = WScript.CreateObject("Scripting.FileSystemObject") set oFileIn = oFS.OpenTextFile(sFilePathIn) set oFileOut = oFS.CreateTextFile(sFilePathOut) Do Until oFileIn.AtEndOfStream = true sLineText = oFileIn.ReadLine() If UCase(Left(sLineText, 9)) = "ATTRIBUTE" then sLineText = "" Dim iPos iPos = InStr(UCase(sLineText), " as ") If iPos > 0 then sLineText = Trim(Left(sLineText, iPos - 1)) End If If Instr(UCase(sLineText), " CREATEOBJECT(") > 0 then Dim sTemp Dim arText sTemp = "" arText = Split(sLineText, " ") Dim iCur for iCur = LBound(arText) to UBound(arText) If Left(UCase(arText(iCur)),12) = "CREATEOBJECT" then sTemp = sTemp & "WScript." & arText(iCur) else sTemp = sTemp & arText(iCur) End If sTemp = sTemp & " " next sLineText = Trim(sTemp) End If If sLineText > "" then oFileOut.WriteLine sLineText Loop oFileIn.Close oFileOut.Close set oFileIn = nothing set oFileOut = nothing set oFS = nothing Но он обламывается :( Помогите конвертировать плиз, очень надо! |
|
|
Запуск самого "свежего" xls файла (vbs)
26.12.2008 10:04:40
Добрый день, форумчане! Задача - запустить в папке самый "свежий" с т.з. даты изменения xls файл. Все это надо сделать на vbs. откопал в инете такой скрипт, но он открывает все найденные файлы. Подскажите пжл - что нужно исправить?
Dim objShell Set objShell = WScript.CreateObject ("WScript.Shell") Dim objFSO, objFile, objDir, i, fn Set objFSO = CreateObject("Scripting.FileSystemObject") Set objDir = objFSO.GetFolder(objShell.CurrentDirectory) For Each objFile In objDir.Files If lcase(Right(objFile.Name,3))= "xls" then Set fs1 = CreateObject("Scripting.FileSystemObject") Set f = fs1.GetFile(objFile) last = CDate(f.DateLastModified) If last > prev Then prev = last: fn = objFile End If Next objShell.Run fn WScript.Sleep 1000 End If Next |
|
|
Пароль на открытие файлов средствами VBA
02.12.2008 10:49:12
Ситуация: есть папка, куда выгружаются отчеты в формате xls. В целях разграничения доступа принято решение ставить пароль на документе. Из-за слабой защищенности пароля книги/листа, нужно сделать пароль на открытие.
Вопрос: Возможно ли средствами VBA сделать пароль на открытие каждого найденного xls файла в папке? |
|
|
Сохранение листа Excel в текстовом формате
27.06.2008 09:25:36
Подскажите пжл, как это можно реализовать.
Постановка проблемы: Есть книга excel, в которой макрос формирует лист с данными в два столбца. Необходимо, чтобы этот лист автоматически сохранялся в текстовом формате (игнорируя сообщения о том, что сохранение данных в данном формате не позволяет все сохранить целиком и т.п.) в ту же папку, где находится листа с именем result.txt Заранее спасибо... |
|
|