Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

4 Март 2021, 19:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Макрос Excel vs OpenOffice  (Прочитано 4605 раз)
0 Пользователей и 1 Гость смотрят эту тему.
castromen
Новичок
*
Offline Offline

Сообщений: 1


« Стартовое сообщение: 26 Июль 2012, 21:41 »

Доброе время суток.
Помогите пожалуйста переделать макрос под OpenOffice

Макрос в листе 2

Код:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim good, tmparr, pos%
If Intersect(Target, Range("B2:B100")) Is Nothing Or Target.Rows.Count > 1 Then Exit Sub
If Target.Value = "" Then UsedRange.Rows(Target.Row).Offset(, 2).ClearContents: Exit Sub
Application.EnableEvents = False
good = Split(Trim$(Target)): Target(1, 8) = ""
If UBound(good) Then Target(1, 8) = good(1)
pos = InStr(1, basatxt, good(0), 1)
If pos Then
    tmparr = Split(Mid$(Replace(basatxt, vbNewLine, "|"), pos + 1), "|")
    Target(1, 2) = tmparr(1)
    Target(1, 3) = tmparr(2)
    Target(1, 7) = tmparr(3)
    Target(1, 11) = tmparr(4)
    Target(1, 12) = tmparr(5)
    Target(1, 13) = tmparr(6)
    Target(1, 17) = tmparr(7)
    Target(1, 18) = tmparr(8)
    Target(1, 19) = tmparr(9)
    Target(1, 20) = tmparr(10)
    Target(1, 21) = tmparr(11)
    Target(1, 22) = tmparr(12)
    Target(1, 23) = tmparr(13)
    Target(1, 24) = tmparr(14)
    Target(1, 25) = tmparr(15)
    Target(1, 26) = tmparr(16)
    Target(1, 27) = tmparr(17) & Target(1, 8)
    Target(1, 34) = tmparr(18)
    Target(1, 37) = tmparr(19)
    Target(1, 38) = tmparr(20)
    Target(1, 39) = tmparr(21)
    Target(1, 40) = tmparr(22)
Else
    MsgBox Target & " in basa.txt not found!", vbExclamation
End If
If brandtxt <> "" Then
    With Target(1, 9).Validation
        .Delete
        .Add Type:=xlValidateList, Formula1:="=Brand"
    End With
End If
With Target(1, 14).Resize(, 2)
    .Value = Now
    .NumberFormat = "yyyy-mm-dd hh:mm:ss"
End With
With Target(1, 16)
    .Value = Now
    .NumberFormat = "yyyy-mm-dd"
End With
Cells(Target.Row, "AC").Resize(, 5).FormulaR1C1 = "=RC2 & ""  "" & RC10"
Application.EnableEvents = True
End Sub


Макрос "эта книга"

Const basa$ = "basa.txt", brand$ = "brand.txt"
Private Sub Workbook_Open()
Dim txtfile, Path$, fso As Object
Set fso = CreateObject("scripting.filesystemobject")
Path = ThisWorkbook.Path & "\"
For Each txtfile In Array(basa, brand)
    If Not fso.fileExists(Path & txtfile) Then MsgBox "File " & txtfile & " not found!", vbExclamation: Exit Sub
Next
With fso.OpenTextFile(Path & basa)
    basatxt = .ReadAll
    .Close
End With
With fso.OpenTextFile(Path & brand)
    brandtxt = Replace(.ReadAll, vbNewLine, ",")
    .Close
End With
End Sub

Макрос "Модуль1"
Public basatxt$, brandtxt$

Заранее спасибо!!!
« Последнее редактирование: 27 Июль 2012, 07:03 от Helen » Записан
ALexey7ov
Участник
**
Offline Offline

Пол: Мужской
Расположение: г.Мелеуз
Сообщений: 17



WWW
« Ответ #1: 9 Октябрь 2012, 13:04 »

В VBA не разбираюсь, опиши конкретно и детально, что есть и что нужно получить?
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!