<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум компьютерной помощи &mdash; Экспорт из Lotus в Word или Exel]]></title>
	<link rel="self" href="https://itpmr.ru/extern.php?action=feed&amp;tid=908&amp;type=atom" />
	<updated>2017-04-27T10:57:49Z</updated>
	<generator>PunBB</generator>
	<id>https://itpmr.ru/viewtopic.php?id=908</id>
		<entry>
			<title type="html"><![CDATA[Re: Экспорт из Lotus в Word или Exel]]></title>
			<link rel="alternate" href="https://itpmr.ru/viewtopic.php?pid=124662#p124662" />
			<content type="html"><![CDATA[<p>Выгрузка в таблицу Exel из всех документов базы Лотуса.</p><div class="codebox"><pre><code>Sub Click(Source As Button)
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Set db = session.CurrentDatabase
    Dim MUdb As NotesDataBase
    Set MUdb = session.Getdatabase(&quot;Br/inf&quot;, &quot;....ficeork\...hiv.nsf&quot;)
    Dim dc As NotesDocumentCollection
    Dim formula As String
    Dim row As Double
    Dim doc As NotesDocument
    Dim item As NotesItem
    formula$ = { (Form = &quot;Register&quot; &amp; !@IsResponseDoc) &amp; (@IsNotMember(&quot;3&quot;:&quot;4&quot;:&quot;5&quot;;CurStatusCreatReorgLiquidIzmen) ) &amp; IsArhivDoc=1 }
    Print formula$
    Set dc=MUdb.Search(formula$,Nothing,0) 
    Print &quot;Найдено: &quot; &amp; dc.count
    Set xl=CreateObject(&quot;Excel.Application&quot;)
&#039; Создадим книгу Excel
    Set xlWbk=xl.Workbooks.Add    
    &#039;Вывод названия выгрузки 
    xlWbk.ActiveSheet.Cells(2, 1).RowHeight=30
    xlWbk.ActiveSheet.Range(&quot;A2&quot;).HorizontalAlignment = -4108
    xlWbk.ActiveSheet.Cells(2, 1)=&quot;Действующие юридические лица&quot; 
    xlWbk.ActiveSheet.Range(&quot;A2:H2&quot;).Merge
    numberrow%=1
    row=5
    xlWbk.ActiveSheet.Cells(5, 1)=&quot;№ п/п&quot;
    xlWbk.ActiveSheet.Cells(5, 1).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 1).Font.Bold=True 
    
    xlWbk.ActiveSheet.Cells(5, 2)=&quot;Полное наименование&quot;
    xlWbk.ActiveSheet.Cells(5, 2).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 2).Font.Bold=True 
    
    xlWbk.ActiveSheet.Cells(5, 3)=&quot;Город&quot;
    xlWbk.ActiveSheet.Cells(5, 3).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 3).Font.Bold=True
    
    xlWbk.ActiveSheet.Cells(5, 4)=&quot;Улица&quot;
    xlWbk.ActiveSheet.Cells(5, 4).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 4).Font.Bold=True
    
    xlWbk.ActiveSheet.Cells(5, 5)=&quot;Дом&quot;
    xlWbk.ActiveSheet.Cells(5, 5).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 5).Font.Bold=True
    
    xlWbk.ActiveSheet.Cells(5, 6)=&quot;Квартира/комната/кабинет&quot;
    xlWbk.ActiveSheet.Cells(5, 6).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 6).Font.Bold=True
    
    xlWbk.ActiveSheet.Cells(5, 7)=&quot;Телефон&quot;
    xlWbk.ActiveSheet.Cells(5, 7).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 7).Font.Bold=True
    
    xlWbk.ActiveSheet.Cells(5, 8)=&quot;Руководитель&quot;
    xlWbk.ActiveSheet.Cells(5, 8).Borders.LineStyle = 1
    xlWbk.ActiveSheet.Cells(5, 8).Font.Bold=True 
    
    &#039;Ширина столбцов и установка флага переноса по словам в ячейке
    xlWbk.ActiveSheet.columns(2).ColumnWidth=25
    xlWbk.ActiveSheet.Cells(row, 2).WrapText = True
    xlWbk.ActiveSheet.columns(3).ColumnWidth=25
    xlWbk.ActiveSheet.Cells(row, 3).WrapText = True
    xlWbk.ActiveSheet.columns(4).ColumnWidth=25
    xlWbk.ActiveSheet.Cells(row, 4).WrapText = True
    xlWbk.ActiveSheet.columns(5).ColumnWidth=10
    xlWbk.ActiveSheet.Cells(row, 5).WrapText = True
    xlWbk.ActiveSheet.columns(6).ColumnWidth=10
    xlWbk.ActiveSheet.Cells(row, 6).WrapText = True
    xlWbk.ActiveSheet.columns(7).ColumnWidth=20
    xlWbk.ActiveSheet.Cells(row, 7).WrapText = True
    xlWbk.ActiveSheet.columns(8).ColumnWidth=65
    xlWbk.ActiveSheet.Cells(row, 8).WrapText = True    
    
    
&#039;выравнивание по верху, типа xlTop
    xlWbk.ActiveSheet.Cells(row, 1).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 2).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 3).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 4).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 5).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 6).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 7).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 8).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 9).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 10).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 11).VerticalAlignment = -4160
    xlWbk.ActiveSheet.Cells(row, 12).VerticalAlignment = -4160
    
    row=6
    
    
    For i=1 To dc.count
        Set doc = dc.GetNthDocument(i)    
        
&#039;        Номер п/п
        xlWbk.ActiveSheet.Cells(row, 1).NumberFormat=&quot;@&quot;
        xlWbk.ActiveSheet.Cells(row, 1)=numberrow%
&#039;Полное наименование
        xlWbk.ActiveSheet.Cells(row, 2)=doc.FullName(0)
&#039;Город
        xlWbk.ActiveSheet.Cells(row, 3)=doc.Atown(0)
&#039;Улица
        xlWbk.ActiveSheet.Cells(row, 4)=doc.Astreet(0)
&#039;Дом
        xlWbk.ActiveSheet.Cells(row, 5).NumberFormat=&quot;@&quot;
        xlWbk.ActiveSheet.Cells(row, 5)=doc.Ahouse(0)
&#039;Квартира/комната/кабинет/
        xlWbk.ActiveSheet.Cells(row, 6).NumberFormat=&quot;@&quot;
        xlWbk.ActiveSheet.Cells(row, 6)=doc.Aflat(0)
&#039;Телефон
        xlWbk.ActiveSheet.Cells(row, 7).NumberFormat=&quot;@&quot;
        xlWbk.ActiveSheet.Cells(row, 7)=doc.Atelephon(0)
&#039; Руководитель    
        If doc.hasitem(&quot;Director&quot;) Then
            Set item = doc.GetFirstItem(&quot;Director&quot;)
            xlWbk.ActiveSheet.Cells(row, 8)= item.Text
        Else
            xlWbk.ActiveSheet.Cells(row, 8)= doc.Director(0)
        End If
        
        row = row +1
        numberrow%=numberrow%+1        
    Next
    xl.Visible=True
    
    
End Sub</code></pre></div>]]></content>
			<author>
				<name><![CDATA[admin]]></name>
				<uri>https://itpmr.ru/profile.php?id=2</uri>
			</author>
			<updated>2017-04-27T10:57:49Z</updated>
			<id>https://itpmr.ru/viewtopic.php?pid=124662#p124662</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Экспорт из Lotus в Word или Exel]]></title>
			<link rel="alternate" href="https://itpmr.ru/viewtopic.php?pid=124307#p124307" />
			<content type="html"><![CDATA[<p>Передача данных в MS Excel</p><p>Переменные для OLE<br />Dim EObj&nbsp; As Variant&nbsp; &nbsp; <br />Dim xlsheet As Variant<br />Dim xl As Variant<br />Dim Rang As Variant<br />Dim Cell1 As Variant<br />Dim Cell2 As Variant&nbsp; &nbsp; </p><p>запуск и установка настроек Excel<br />создаем OLE объект</p><p>Set EObj = CreateObject(&quot;Excel.Application&quot;)<br />If EObj Is Nothing Then&nbsp; &nbsp; &nbsp; &nbsp;&#039;проверка на наличие установленного Excel<br />&nbsp; &nbsp; Messagebox &quot;Не установлен Excel!!!&quot;, 0 + 16 , &quot;ошибка&quot;&nbsp; &nbsp; <br />&nbsp; &nbsp; Exit Sub<br />End If<br />If Isnull(EObj) Then &#039;если не получилось, то выходим<br />Messagebox &quot;Не удается создать &#039;книгу&#039;.&quot;<br />Exit Sub<br />End If&nbsp; &nbsp; <br />Print (&quot;Запуск Excel Application...&quot;)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />&nbsp; &nbsp; &nbsp; &nbsp; &#039; Отключаем реакцию Excel на события, чтобы ускорить вывод информации<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.Application.EnableEvents=False<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Set NewBook = EObj.Workbooks.Add(&quot;&quot;)<br />Set xlsheet = EObj.Workbooks(1).Worksheets(1)</p><p>&nbsp; &nbsp;&#039;установка полей таблицы<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.LeftMargin= EObj.Application.InchesToPoints(0.35)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.RightMargin= EObj.Application.InchesToPoints(0.35)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.TopMargin= EObj.Application.InchesToPoints(0.35)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.BottomMargin= EObj.Application.InchesToPoints(0.45)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.FooterMargin = EObj.Application.InchesToPoints(0.30)<br />&nbsp; &nbsp; &nbsp; &nbsp; &#039;установка ориентации страницы <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EObj.ActiveSheet.PageSetup.Orientation= Cint(cd.okrug(0))</p><p>форматирование таблицы</p><p>&nbsp; &nbsp; Set xl=xlsheet.Range(xlsheet.Cells(1,col0),xlsheet.Cells(row1,col1))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.font.name=&quot;Times New Roman&quot;<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.WrapText=True&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;перенос по словам</p><br /><p>&#039;прорисовка всех клеток<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#039;вся таблица<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Set xl=xlsheet.Range(xlsheet.Cells(row0,col0),xlsheet.Cells(row1,col1))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.borders.LineStyle = 1<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.borders.Weight = 2<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.VerticalAlignment=-4160<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; If cd.okrug(0)=&quot;1&quot; Then<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.font.size=11&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Else<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.font.size=10<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; End If<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; For i1=7 To 10<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.Borders(i1).LineStyle = 1<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.Borders(i1).Weight = 3<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Next&nbsp; &nbsp; </p><br /><p>&nbsp; &nbsp;&#039;шапка<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Set xl=xlsheet.Range(xlsheet.Cells(row0,col0),xlsheet.Cells(row0,col1))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.font.bold=True<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.HorizontalAlignment=-4108<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.VerticalAlignment=-4108<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.Borders(4).LineStyle = 1<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xl.Borders(4).Weight = 3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </p><p>занесение заголовка</p><p>xlsheet.Cells(1,1)=SS1<br />xlsheet.Cells(2,1)=SS2</p><p>перенос сформировавшегося массива в Excel</p><p>Set Cell1=xlsheet.cells(row0,col0)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;левая верхняя ячейка диаппазона<br />Set Cell2=xlsheet.cells(row1,col1)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;правая нижняя ячейка диаппазона<br />Set rang=xlsheet.range(cell1,cell2)<br />Rang.Value = SumData</p><p>EObj.Visible=True<br />Print (&quot;Отчет готов&quot;)</p>]]></content>
			<author>
				<name><![CDATA[admin]]></name>
				<uri>https://itpmr.ru/profile.php?id=2</uri>
			</author>
			<updated>2015-05-06T05:45:30Z</updated>
			<id>https://itpmr.ru/viewtopic.php?pid=124307#p124307</id>
		</entry>
</feed>
