Dizer ao word 2007 que o espaçamento depois deve ser 0 pt?
Olá amigos, abaixo segue uma pequena rotina que exporta dados para o word.
Ela funciona, porém, no Word 2007 as linhas estão ficando com espaçamento do tipo depois de 10 pt.
Alguém saberia o comando para dizer que não quero este espaçamento de 10 pt, ou seja, quero que seja zero antes e depois.
Se alguém tiver dúvida, esta opção no Office Word 2007 se encontra na guia Layout da Página >> Parágrafo >> contendo as opções Recuar: À Esquerda; à Direita. E a opção Espaçamento: Antes; Depois;
Agradeço pelas dicas ou trechinhos de códigos de exemplo contendo o comando correto.
procedure TnorcamentoCadastro.documentotxt;
var word, documento, wordsalve, docrodape: variant;
item: integer;
esp12, esp23, esp34, esp45, esp56, esp67, aux, caminho, nomeArquivo: string;
begin
BtnImprimir.Enabled := false;
BtnVisualisar.Enabled := false;
BtnDeletaorcamento.Enabled := false;
BtnEnviar.Enabled := false;
word := GetorCreateObject('Word.Application'); //cria uma instância do word
word.visible := false; //oculta o word
wordsalve := word.documents.add; //adiciona um documento
wordsalve := word.ActiveDocument; //ativa o documento
wordsalve.ShowSpellingErrors := false; {não mostra os erros ortográficos}
documento := word.selection; //seleciona para a escrita
documento.PageSetup.RightMargin := 09;
documento.PageSetup.LeftMargin := 11;
documento.PageSetup.TopMargin := 71;
documento.PageSetup.BottomMargin := 71;
documento.PageSetup.Orientation := poportrait;
documento.Font.Name := 'courier new'; //lucida controle são as fontes que funcionam
documento.font.size := 9;
documento.Tables.Add(Range := Word.Selection.Range, NumRows := 1, NumColumns := 2);
documento.InlineShapes.AddPicture(nprincipal.caminhoExe + 'imagem\logocolling.JPG');
documento.MoveRight(12); { Próxima célula }
documento.font.bold := True;
documento.TypeText(' Controle: ' + dmpe.QorcamentoCODIGO.Text + #13);
documento.TypeText(' Data....: ' + dmpe.QorcamentoDATA.DisplayText + #13);
documento.TypeText('' + #13 + #13);
documento.TypeText('COTAÇÃO DE PREÇOS' + #13);
documento.font.bold := False;
documento.MoveDown; {sai da tabela}
documento.Tables.Add(Range := Word.Selection.Range, NumRows := 1, NumColumns := 1);
documento.font.bold := false;
documento.TypeText('----------------------------------------------------------------------------------------------------------' + #13);
documento.TypeText('Cliente..: ' + dmc.QdblookupclienteCLIENTE.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText('Prezado Senhor.: ' + dmc.QdblookupclienteCONTATO.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText('Em atenção a solicitação de V. Sas. informamos nossas melhores condições de fornecimento do seguinte material:' + #13);
documento.TypeText('' + #13);
documento.TypeText('Item Qtde Descrição Marca Preço %IPI %S.T.' + #13);
documento.Typetext('----------------------------------------------------------------------------------------------------------' + #13);
documento.font.size := 8; //Tamanho da fonte
item := 0;
dmpe.QorcamentoItem.First;
while not dmpe.QorcamentoItem.eof do
begin
item := item + 1;
esp12 := StringOfChar(' ', 4 - length(IntToStr(item)) );
esp23 := StringOfChar(' ', 4 - length(dmpe.QorcamentoItemQUANTIDADE.AsString) );
esp34 := StringOfChar(' ', 50 - length(dmpe.QorcamentoItemPRODUTO.AsString) );
esp45 := StringOfChar(' ', 20 - length(dmpe.QorcamentoItemMARCA.AsString) );
esp56 := StringOfChar(' ', 10 - length(dmpe.QorcamentoItemVALOR.DisplayText) );
esp67 := StringOfChar(' ', 5 - length(dmpe.QorcamentoItemPERCENTUALIPI.DisplayText) );
documento.Typetext(IntToStr(item) + esp12 + ' ' + dmpe.QorcamentoItemQUANTIDADE.AsString + esp23 + ' ' + dmpe.QorcamentoItemPRODUTO.AsString + esp34 + ' ' +
dmpe.QorcamentoItemMARCA.AsString + esp45 + ' ' + dmpe.QorcamentoItemVALOR.DisplayText + esp56 + ' ' +
dmpe.QorcamentoItemPERCENTUALIPI.DisplayText + esp67 + ' ' + dmpe.QorcamentoItemPERCENTUALSUBSTTRIB.DisplayText + #13);
dmpe.QorcamentoItem.Next;
end; //end dos itemsn
documento.font.size := 9; //Tamanho da fonte
documento.Typetext('----------------------------------------------------------------------------------------------------------' + #13);
documento.TypeText('Total Orçamento: ' + dmpe.QorcamentoTOTALORCAMENTO.DisplayText + ' ' + 'Total c/ IPI.: ' + dmpe.QorcamentoTOTALIPI.DisplayText + ' ' + 'Total c/ Subst. Trib.: ' + dmpe.QorcamentoTOTALSUBSTTRIB.DisplayText + #13);
documento.TypeText('' + #13);
documento.TypeText('CONDIÇÕES GERAIS' + #13);
documento.TypeText('' + #13);
documento.TypeText('PRAZO...: ' + dmpe.QorcamentoPRAZO.AsString + #13);
documento.TypeText('ENTREGA.: ' + dmpe.QorcamentoENTREGA.AsString + #13);
documento.TypeText('FRETE...: ' + dmpe.QorcamentoFRETE.AsString + #13);
documento.TypeText('VALIDADE: ' + dmpe.QorcamentoVALIDADE.AsString + #13);
documento.TypeText('OBS.: ' + dmpe.QorcamentoOBS.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText(' Sem mais agradecemos a consulta e colocamo-nos à disposição.' + #13);
documento.TypeText('' + #13);
documento.TypeText(' Atenciosamente' + #13);
documento.TypeText('' + #13);
documento.TypeText(' CRISTIANO COLLING' + #13);
documento.TypeText(#13);
{---------------------- rodape ------------------------}
word.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageFooter;
docrodape := word.selection;
wordsalve.pagesetup.FooterDistance := 65;
docrodape.font.size := 8;
docrodape.TypeText('WWW.DELTACORP.COM.BR - Software de Qualidade. sistemas@deltacorp.com.br (55)3387-2078 - Ajuricaba/RS');
docrodape.ParagraphFormat.Alignment := wdAlignParagraphCenter;
{-------------- fim rodape --------------------}
caminho := dmconnect.caminhoOrcamento;
if not DirectoryExists(caminho) then
ForceDirectories(caminho);
NomeArquivo := dmpe.QorcamentoCODIGO.AsString + '-' + FormatDateTime('yyyy', dmpe.QorcamentoDATA.AsDateTime);
wordsalve.saveas(widestring(Caminho + '\' + nomeArquivo), 0);
Word.ActiveDocument.Close(SaveChanges := 0); //salva
Word.visible := true; //torna visível o word
Word.WindowState := 2; //0=default 1=maximize 2=minimize //minimiza
// Word.Quit;
// ndocumento.WindowState:=wsmaximized;
BtnImprimir.Enabled := True;
BtnVisualisar.Enabled := True;
BtnDeletaorcamento.Enabled := True;
BtnEnviar.Enabled := True;
end;
Ela funciona, porém, no Word 2007 as linhas estão ficando com espaçamento do tipo depois de 10 pt.
Alguém saberia o comando para dizer que não quero este espaçamento de 10 pt, ou seja, quero que seja zero antes e depois.
Se alguém tiver dúvida, esta opção no Office Word 2007 se encontra na guia Layout da Página >> Parágrafo >> contendo as opções Recuar: À Esquerda; à Direita. E a opção Espaçamento: Antes; Depois;
Agradeço pelas dicas ou trechinhos de códigos de exemplo contendo o comando correto.
procedure TnorcamentoCadastro.documentotxt;
var word, documento, wordsalve, docrodape: variant;
item: integer;
esp12, esp23, esp34, esp45, esp56, esp67, aux, caminho, nomeArquivo: string;
begin
BtnImprimir.Enabled := false;
BtnVisualisar.Enabled := false;
BtnDeletaorcamento.Enabled := false;
BtnEnviar.Enabled := false;
word := GetorCreateObject('Word.Application'); //cria uma instância do word
word.visible := false; //oculta o word
wordsalve := word.documents.add; //adiciona um documento
wordsalve := word.ActiveDocument; //ativa o documento
wordsalve.ShowSpellingErrors := false; {não mostra os erros ortográficos}
documento := word.selection; //seleciona para a escrita
documento.PageSetup.RightMargin := 09;
documento.PageSetup.LeftMargin := 11;
documento.PageSetup.TopMargin := 71;
documento.PageSetup.BottomMargin := 71;
documento.PageSetup.Orientation := poportrait;
documento.Font.Name := 'courier new'; //lucida controle são as fontes que funcionam
documento.font.size := 9;
documento.Tables.Add(Range := Word.Selection.Range, NumRows := 1, NumColumns := 2);
documento.InlineShapes.AddPicture(nprincipal.caminhoExe + 'imagem\logocolling.JPG');
documento.MoveRight(12); { Próxima célula }
documento.font.bold := True;
documento.TypeText(' Controle: ' + dmpe.QorcamentoCODIGO.Text + #13);
documento.TypeText(' Data....: ' + dmpe.QorcamentoDATA.DisplayText + #13);
documento.TypeText('' + #13 + #13);
documento.TypeText('COTAÇÃO DE PREÇOS' + #13);
documento.font.bold := False;
documento.MoveDown; {sai da tabela}
documento.Tables.Add(Range := Word.Selection.Range, NumRows := 1, NumColumns := 1);
documento.font.bold := false;
documento.TypeText('----------------------------------------------------------------------------------------------------------' + #13);
documento.TypeText('Cliente..: ' + dmc.QdblookupclienteCLIENTE.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText('Prezado Senhor.: ' + dmc.QdblookupclienteCONTATO.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText('Em atenção a solicitação de V. Sas. informamos nossas melhores condições de fornecimento do seguinte material:' + #13);
documento.TypeText('' + #13);
documento.TypeText('Item Qtde Descrição Marca Preço %IPI %S.T.' + #13);
documento.Typetext('----------------------------------------------------------------------------------------------------------' + #13);
documento.font.size := 8; //Tamanho da fonte
item := 0;
dmpe.QorcamentoItem.First;
while not dmpe.QorcamentoItem.eof do
begin
item := item + 1;
esp12 := StringOfChar(' ', 4 - length(IntToStr(item)) );
esp23 := StringOfChar(' ', 4 - length(dmpe.QorcamentoItemQUANTIDADE.AsString) );
esp34 := StringOfChar(' ', 50 - length(dmpe.QorcamentoItemPRODUTO.AsString) );
esp45 := StringOfChar(' ', 20 - length(dmpe.QorcamentoItemMARCA.AsString) );
esp56 := StringOfChar(' ', 10 - length(dmpe.QorcamentoItemVALOR.DisplayText) );
esp67 := StringOfChar(' ', 5 - length(dmpe.QorcamentoItemPERCENTUALIPI.DisplayText) );
documento.Typetext(IntToStr(item) + esp12 + ' ' + dmpe.QorcamentoItemQUANTIDADE.AsString + esp23 + ' ' + dmpe.QorcamentoItemPRODUTO.AsString + esp34 + ' ' +
dmpe.QorcamentoItemMARCA.AsString + esp45 + ' ' + dmpe.QorcamentoItemVALOR.DisplayText + esp56 + ' ' +
dmpe.QorcamentoItemPERCENTUALIPI.DisplayText + esp67 + ' ' + dmpe.QorcamentoItemPERCENTUALSUBSTTRIB.DisplayText + #13);
dmpe.QorcamentoItem.Next;
end; //end dos itemsn
documento.font.size := 9; //Tamanho da fonte
documento.Typetext('----------------------------------------------------------------------------------------------------------' + #13);
documento.TypeText('Total Orçamento: ' + dmpe.QorcamentoTOTALORCAMENTO.DisplayText + ' ' + 'Total c/ IPI.: ' + dmpe.QorcamentoTOTALIPI.DisplayText + ' ' + 'Total c/ Subst. Trib.: ' + dmpe.QorcamentoTOTALSUBSTTRIB.DisplayText + #13);
documento.TypeText('' + #13);
documento.TypeText('CONDIÇÕES GERAIS' + #13);
documento.TypeText('' + #13);
documento.TypeText('PRAZO...: ' + dmpe.QorcamentoPRAZO.AsString + #13);
documento.TypeText('ENTREGA.: ' + dmpe.QorcamentoENTREGA.AsString + #13);
documento.TypeText('FRETE...: ' + dmpe.QorcamentoFRETE.AsString + #13);
documento.TypeText('VALIDADE: ' + dmpe.QorcamentoVALIDADE.AsString + #13);
documento.TypeText('OBS.: ' + dmpe.QorcamentoOBS.AsString + #13);
documento.TypeText('' + #13);
documento.TypeText(' Sem mais agradecemos a consulta e colocamo-nos à disposição.' + #13);
documento.TypeText('' + #13);
documento.TypeText(' Atenciosamente' + #13);
documento.TypeText('' + #13);
documento.TypeText(' CRISTIANO COLLING' + #13);
documento.TypeText(#13);
{---------------------- rodape ------------------------}
word.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageFooter;
docrodape := word.selection;
wordsalve.pagesetup.FooterDistance := 65;
docrodape.font.size := 8;
docrodape.TypeText('WWW.DELTACORP.COM.BR - Software de Qualidade. sistemas@deltacorp.com.br (55)3387-2078 - Ajuricaba/RS');
docrodape.ParagraphFormat.Alignment := wdAlignParagraphCenter;
{-------------- fim rodape --------------------}
caminho := dmconnect.caminhoOrcamento;
if not DirectoryExists(caminho) then
ForceDirectories(caminho);
NomeArquivo := dmpe.QorcamentoCODIGO.AsString + '-' + FormatDateTime('yyyy', dmpe.QorcamentoDATA.AsDateTime);
wordsalve.saveas(widestring(Caminho + '\' + nomeArquivo), 0);
Word.ActiveDocument.Close(SaveChanges := 0); //salva
Word.visible := true; //torna visível o word
Word.WindowState := 2; //0=default 1=maximize 2=minimize //minimiza
// Word.Quit;
// ndocumento.WindowState:=wsmaximized;
BtnImprimir.Enabled := True;
BtnVisualisar.Enabled := True;
BtnDeletaorcamento.Enabled := True;
BtnEnviar.Enabled := True;
end;
Delmar Observação)
Curtidas 0
Respostas
Delmar Observação)
25/01/2010
Resolvido, segue o comando
documento.ParagraphFormat.SpaceBefore := 0;
documento.ParagraphFormat.SpaceAfter := 0;
E aproveito para divulgar o link com mais comandos, porém em VBA, mas pode ser útil mesmo assim.
http://www.thezcorp.com/VBACodeSamples.aspx
Delmar
documento.ParagraphFormat.SpaceBefore := 0;
documento.ParagraphFormat.SpaceAfter := 0;
E aproveito para divulgar o link com mais comandos, porém em VBA, mas pode ser útil mesmo assim.
http://www.thezcorp.com/VBACodeSamples.aspx
Delmar
GOSTEI 0