Консультация № 171782
31.08.2009, 23:03
0.00 руб.
0 3 0
Помогите пожалуйста в решении огромной проблеммы для меня. Я ничего не понимвю в программировании, но хочу сделать программу для работы с Excel Смысл этой программы в том, чтобы готовить листы пересчета и вести сам пересчет. Я копирую таблицу в эту программу и готовлю в ней лист пересчета, в определенном столбце находятся конечные остатки, в другом столбце я впечатываю реальное количество, а в следующем столбце доложны появиться расхождения, т.е. столбец с конечным количеством должен вычитать реальное количество, но как это сделать я не знаю. вот есть скрипт, но он копирует столбцы через один, а мне надо определенные и чтобы сразу упорядочивалась по алфавиту по первому столбцу
Вот скрин программы, которую я начал делать

[img]C:\Documents and Settings\Admin\Рабочий стол\Безымянный.jpg[/img]


Приложение:
а вот скрипт
Option Explicit

Dim FSO

Function doWork(Data,Index)
Dim strIn
strIn = CStr(Data)
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim Ext
Ext = GetAnExtension(strIn)
If LCase(Ext) <> "xls" Then
Sys.onEvent strIn
Else
Dim XL
Set XL = CreateObject("Excel.Application")
XL.WorkBooks.Open strIn
Dim strOut
strOut = ""
Dim rows
rows = 1
Dim colm
colm = 1
Do While Not IsEmpty(XL.Cells(rows, 1).Value)
Do While Not IsEmpty(XL.Cells(rows, colm).Value)
strOut = strOut & XL.Cells(rows, colm).Value & ";"
colm = colm + 2
Loop
strOut = strOut & vbCrLf
colm = 1
rows = rows + 1
Loop
XL.Quit
Set XL = Nothing
Sys.onExcel strOut
End If
End Function

Function GetAnExtension(FileSpec)
On Error Resume Next
GetAnExtension = FSO.GetExtensionName(FileSpec)
If CStr(Err.Number) <> 0 Then call LogMsg(EventError, "Can't get extension of file: " & FileSpec)
End Function

Sub LogMsg(intType, strMsg)
Sys.onError strMsg & ";" & intType
End Sub

Обсуждение

Неизвестный
01.09.2009, 02:14
общий
копирует столбцы через один, потому что: colm = colm + 2, почему 2?

Где Вы этот скрипт запускать собираетесь?

Запустите в Excel "запись макросов", сделайте вручную, все что Вы хотите, чтобы делал Excel, остановите "запись макросов", и то что записалось, покажите нам...

з/ы скрин?
Неизвестный
01.09.2009, 07:44
общий
Да, мне тоже скрин понравился .
давно
Старший Модератор
31795
6196
02.09.2009, 20:00
общий
Логвинов Дмитрий Александрович:
На любом файлообменнике выложите свой скрин.
Эксперты не телепаты, а получать не санкционированный доступ к Вашему компьтеру не хочется.
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа