Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: макрос Excel_VBA конвертировать в макрос OO Добавлено: 29.05.07 13:33  

Автор вопроса:  Черкашин
Всем привет! Такая проблема возникла: переходим на Линукс, надо рабочий макрос (VBA Excel) заставить работать в OpenOffice.org. Использую Excel 2002 SP-2 и ОО 2.0.3 под виндой ХР. При попытке просто запуска в ОО получаю сообщение "Синтаксическая ошибка BASIC. Неожиданный символ. Base" несколько раз подряд - каждый раз, где встречается следующее присваивание:
bs = Base

При этом в Excel код чудесно работает.
О макросе: содержит выпадающие списки, где кассир выбирает нужное ФИО и др. информацию. Создается им еще и панелька с кнопками для редактирования, добавления, удаления элементов данных списков.
Вот пример далнейшего использования 'bs' в коде:
Private Sub Sprav_Control()
    'Вызов формы управления справочником
    ASN = ActiveSheet.Name
    If ASN = "Видатковий" Or ASN = "Прибутковий" Then
        
        deact_0 (0) 'Установка признака деактивации Combo в 0
                
        Load Sprav
        bs = Base             'Тут идет выброс сообщения об ошибке  
        Set_OptionButton bs   'Установка переключателей
        Load_List bs, 0       'Загрузка списка
        
        Sprav.Show
    End If

End Sub

Function Base()
    'Текущая база
    Base = Sheets("Param").Cells(5, 1)
    Base = CStr(Base)
    If Not (Base = "BaseKas" Or Base = "BaseFil" Or _
            Base = "BaseOffice" Or Base = "BasePidstVdtk" Or _
            Base = "BasePidstPrbtk") Then
        Base = "BaseKas"
    End If
End Function

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Черкашин



Вопросов: 3
Ответов: 8
 Профиль | | #1 Добавлено: 29.05.07 13:36
Так вот, как заставить макрос работать в ОО и при этом желательно без потерь времени на доработку?
Заранее большое спасибо за помощь

Ответить

Номер ответа: 2
Автор ответа:
 ferico



Вопросов: 2
Ответов: 31
 Web-сайт: www.ricotech.ru
 Профиль | | #2
Добавлено: 05.10.07 16:39
Возможно нужно явно задавать тип функции.
А вообще не проще ли передавать значение через переменную?
Также можно попробовать передавать Base через параметр функции или процедуры.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам