Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Vadikan:
потому что в Windows RT из пошика это не сделать. »
Там нет PowerShell'а?


Цитата Vadikan:
Для решения текущей задачи достаточно только поочередно открыть, сохранить и закрыть все книги XLS в заданной папке. »
То бишь, со «внутренностями» документа никаких операций делать больше не надо?

Примерно так:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim objFSO
Dim objFile

Dim strFolder

Dim objSheet


Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If WScript.Arguments.Count = 1 Then ' Если задан аргумент скрипта…
	' …используем его как имя папки для обработки
	strFolder = WScript.Arguments.Item(0)
Else
	' …иначе используем текущий каталог для скрипта
	strFolder = objFSO.GetAbsolutePathName(".")
End If

' В принципе, можно и прямо задать потребную папку для обработки
'strFolder = "c:\temp\excelRemouveColumn"

With WScript.CreateObject("Excel.Application")
	.DisplayAlerts = False
	
	If objFSO.FolderExists(strFolder) Then
		For Each objFile In objFSO.GetFolder(strFolder).Files
			Select Case LCase(objFSO.GetExtensionName(objFile.Name))
				Case "xls", "xlsx"
					With .Workbooks.Open(objFile.Path)
						'WScript.Echo objFile.Path
						
						.Save
						.Close
					End With
				Case Else
					' Nothing to do
			End Select
		Next
	Else
		WScript.Echo "Folder [" & strFolder & "] not found."
	End If
	
	.Quit
End With

Set objFSO = Nothing

WScript.Quit

Последний раз редактировалось Iska, 18-04-2013 в 00:17.

Это сообщение посчитали полезным следующие участники:

Отправлено: 04:49, 17-04-2013 | #6