Ir ao conteúdo

Excel Excel copia e cola no Word com linhas formatadas


Ir à solução Resolvido por Basole,

Posts recomendados

Postado

Olá!

Estou aqui novamente para pedir uma nova ajuda.

Tenho uma planilha que executa uma macro que copia as células do Excel e cola no Word como tabela. (O arquivo fica salvo na área de trabalho). Até aí a macro está feita e funcionando perfeitamente.

O que preciso é que, assim que copiar pro Word, a macro formate as linhas pra ficarem ajustadas e não muito espaçadas (seria uma formatação de parágrafo). 

Rodei a macro direto no word e colei o código abaixo. A minha dificuldade é fazer com que o Excel entenda este código.

Será que alguém pode me ajudar? Segue o arquivo anexo. 

 

Selection.WholeStory
    With Selection.ParagraphFormat
        .LeftIndent = CentimetersToPoints(0)
        .RightIndent = CentimetersToPoints(0)
        .SpaceBefore = 0
        .SpaceBeforeAuto = False
        .SpaceAfter = 0
        .SpaceAfterAuto = False
        .LineSpacingRule = wdLineSpaceSingle
        .WidowControl = True
        .KeepWithNext = False
        .KeepTogether = False
        .PageBreakBefore = False
        .NoLineNumber = False
        .Hyphenation = True
        .FirstLineIndent = CentimetersToPoints(0)
        .OutlineLevel = wdOutlineLevelBodyText
        .CharacterUnitLeftIndent = 0
        .CharacterUnitRightIndent = 0
        .CharacterUnitFirstLineIndent = 0
        .LineUnitBefore = 0
        .LineUnitAfter = 0
        .MirrorIndents = False
        .TextboxTightWrap = wdTightNone
    End With

Formatar linha no Word.zip

  • Curtir 1
  • Solução
Postado

@Luciana Goes segue o código com as alterações, com a altura da linha para 0,46 cm

 

 

Sub Formatarlinhaword()
Dim caminho As String
Dim nome As String
Range("B2:B6").Copy
Range("D2").Value = Environ("USERPROFILE")
caminho = Range("d3").Value
nome = Range("d4").Value
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrddoc = wrdApp.Documents.Add
With wrddoc
.Activate
.Range.Paste
       With .Tables(.Tables.Count)
        '.AutoFitBehavior wdAutoFitWindow
        .Rows.SetHeight RowHeight:=wrddoc.Application.CentimetersToPoints(0.46), _
                        HeightRule:=wdRowHeightExactly  'Ajusta Altura da linha
       End With
    
Selection.Cells.Merge


If Dir(caminho & nome) <> "" Then
Kill caminho & nome
End If
.SaveAs (caminho & nome)
.Application.Quit
End With
Set wrddoc = Nothing
Set wrdApp = Nothing
Application.CutCopyMode = False
Set wrddoc = Nothing
Set wrdApp = Nothing
Application.CutCopyMode = False
Range("b3").Select
End Sub

 

*  Marque a referencia "Microsoft Word xx.x Object Library"  na sua planilha do Excel

 

image.png.4e65d76df63b1b9aa7be171ab5160063.png

 

image.png.5a98b16a652b4527518ee88063732310.png

  • Curtir 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!