Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: [wdx] WinScript Advanced Content Plugin (x86\x64) (new) 
Author Message
Monarch-LFV



PostPosted: Sat Feb 27, 2021 06:02    Post subject: Reply with quote

Batya
На основе вашего кода написал нужный мне код:
Code:
''=================================================
' Script for WinScriptAdv content plugin

' Возвращает значение найденной ячейки Excel в указанном столбце
' по принципу =ВПР("Итого по смете:";B:C;2;ЛОЖЬ)
'=================================================

'========== Изменяемые параметры =================
Const Addr = "Лист1!C"  ' Адрес ячейки без строки
Const columnConst = "B:B"  ' В каких столбцах должно быть найдено постоянное значение
Const ValueConst = "Итого по смете:"  ' Само постоянное значение
'=================================================

content = Result(filename, Addr)

Function GetCellValue(pXl, pFile, pAddr)
  Dim lRow, lSh
  pXl.Visible = False
  pXl.DisplayAlerts = False
  Call pXl.Workbooks.Open(pFile, , True)
  If InStr(pAddr, "!") > 0 Then
    Set lSh = pXl.Worksheets(Left(pAddr, InStr(pAddr, "!") - 1))
  Else
    Set lSh = pXl.ActiveSheet
  End If
  lRow = lSh.Range(columnConst).Find(ValueConst, , , , , 1).Row
  GetCellValue = lSh.Range(Addr & lRow)
  Set lSh = Nothing
End Function

Function Result(pFile, byVal pAddr)
  Dim objXL
  Set objXL = CreateObject("Excel.Application")
  On Error Resume Next
  Result = GetCellValue(objXL, pFile, pAddr)
  On Error Goto 0
  objXL.Quit()
  Set objXL = Nothing
End Function

Спасибо за наводку!
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group