Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Quebras de página com VBA
Quebras de página com VBA
Boa tarde pessoal,
Preciso de um código que fixe as quebras de página nas linhas que eu determinar.
Alguém pode me ajudar? Obrigado!
Preciso de um código que fixe as quebras de página nas linhas que eu determinar.
Alguém pode me ajudar? Obrigado!
Re: Quebras de página com VBA
Boa tarde,
Fiz esse exemplo aqui com um arquivo de texto, em que ele abre uma caixa e pergunta qual linha você deseja quebrar. Basta inserir um número de linha qualquer e dar 'Enter'. Ele quebrará a linha do número digitado.
Caso queira quebrar mais linhas, basta ir digitando os números que quiser.
Após feitas as escolhas, pode fechar a caixa. Se quiser repetir é só executar novamente a macro.
Coloquei numeração nas linhas para que se possa ver onde foi quebrado mais facilmente.
Espero que ajude.
Abços
------------------------------------------------------------------------------------------------------------------------------------------------
' Código da macro 'Quebra'
------------------------------------------------------------------------------------------------------------------------------------------------
' Cógigo do Form
' (Crie o UserForm primeiro e depois insira os objetos: Label e TextBox,
-------------------------------------------------------------------------------------------------------------------------------------------------
Insira um texto com numeração, assim:
1 Se olharmos a vida em seus pequenos detalhes, tudo parece bem ridículo. É como uma gota d`água vista num
2 microscópio, uma só gota cheia de protozoários. Achamos muita graça como eles se agitam e lutam tanto entre si.
3 Aqui, no curto período da vida
4 humana, essa atividade febril produz um efeito cômico
5
6 Arthur Schopenhauer
7
8 Eu não vou por os fundamentos da minha fé em pequenos deuses que podem ser destruídos em uma era atômica,
9 mas em um Deus que tem sido nosso socorro desde as eras passadas, e nossa esperança para os anos que virão, e
10 nosso abrigo no tempo da tempestade, e nosso eterno lar. Este é o Deus em quem eu estou colocando o
11 fundamento 10 da minha fé. Este é o Deus que eu rogo a vocês para adorarem nesta manhã.
12
13 Martin Luther King
14
15 (...) Me recordei rapidamente de todas as pessoas e coisas que perdi por ainda não estar preparada para elas, ou 16 por ainda ter muita curiosidade de mundo e dificuldade em ser permanente...
17
18 Recordei de amigos e parentes distantes, aqueles que eu sempre deixo para depois porque moram muito longe ou 19 acabaram se tornando pessoas muito diferentes de mim, sempre penso “mês que vem faço contato com eles”. E se 20 não tiver mês que vem?
21
22 Tati Bernardi
Fiz esse exemplo aqui com um arquivo de texto, em que ele abre uma caixa e pergunta qual linha você deseja quebrar. Basta inserir um número de linha qualquer e dar 'Enter'. Ele quebrará a linha do número digitado.
Caso queira quebrar mais linhas, basta ir digitando os números que quiser.
Após feitas as escolhas, pode fechar a caixa. Se quiser repetir é só executar novamente a macro.
Coloquei numeração nas linhas para que se possa ver onde foi quebrado mais facilmente.
Espero que ajude.
Abços
------------------------------------------------------------------------------------------------------------------------------------------------
' Código da macro 'Quebra'
Código: Selecionar todos
Public num As String
Sub Quebra()
'
' Quebra Macro
'
UserForm1.Show
Selection.HomeKey Unit:=wdStory, Extend:=wdMove
Selection.MoveDown Unit:=wdLine, Count:=num - 1
Selection.InsertBreak Type:=wdPageBreak
Quebra
End Sub
' Cógigo do Form
' (Crie o UserForm primeiro e depois insira os objetos: Label e TextBox,
Código: Selecionar todos
Private Sub Label1_Click()
End Sub
Private Sub TextBox1_AfterUpdate()
num = TextBox1()
End Sub
Private Sub TextBox1_Change()
num = TextBox1()
End Sub
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
' Se inserir aqui executa perfeito
If KeyCode = 13 Then
UserForm1.Hide
End If
End Sub
Private Sub UserForm_Terminate()
End
End Sub
Insira um texto com numeração, assim:
1 Se olharmos a vida em seus pequenos detalhes, tudo parece bem ridículo. É como uma gota d`água vista num
2 microscópio, uma só gota cheia de protozoários. Achamos muita graça como eles se agitam e lutam tanto entre si.
3 Aqui, no curto período da vida
4 humana, essa atividade febril produz um efeito cômico
5
6 Arthur Schopenhauer
7
8 Eu não vou por os fundamentos da minha fé em pequenos deuses que podem ser destruídos em uma era atômica,
9 mas em um Deus que tem sido nosso socorro desde as eras passadas, e nossa esperança para os anos que virão, e
10 nosso abrigo no tempo da tempestade, e nosso eterno lar. Este é o Deus em quem eu estou colocando o
11 fundamento 10 da minha fé. Este é o Deus que eu rogo a vocês para adorarem nesta manhã.
12
13 Martin Luther King
14
15 (...) Me recordei rapidamente de todas as pessoas e coisas que perdi por ainda não estar preparada para elas, ou 16 por ainda ter muita curiosidade de mundo e dificuldade em ser permanente...
17
18 Recordei de amigos e parentes distantes, aqueles que eu sempre deixo para depois porque moram muito longe ou 19 acabaram se tornando pessoas muito diferentes de mim, sempre penso “mês que vem faço contato com eles”. E se 20 não tiver mês que vem?
21
22 Tati Bernardi
- Anexos
-
- Quebra de Página.zip
- (25.41 KiB) Baixado 77 vezes
-
- Tela.png (65.32 KiB) Exibido 1320 vezes
Re: Quebras de página com VBA
AlexFerro escreveu: ↑Ter Mai 17, 2022 1:25 pm Boa tarde,
Fiz esse exemplo aqui com um arquivo de texto, em que ele abre uma caixa e pergunta qual linha você deseja quebrar. Basta inserir um número de linha qualquer e dar 'Enter'. Ele quebrará a linha do número digitado.
Caso queira quebrar mais linhas, basta ir digitando os números que quiser.
Após feitas as escolhas, pode fechar a caixa. Se quiser repetir é só executar novamente a macro.
Coloquei numeração nas linhas para que se possa ver onde foi quebrado mais facilmente.
Espero que ajude.
Abços
-------------------------------------------------------------------------------------------------------------------------------
Boa noite amigo,
Obrigado pela ajuda, o código que você postou aqui é muito interessante, e acredito que ajudará muitas pessoas aqui. Porém o que eu preciso na verdade é que estas quebras de página fiquem fixas, para que não possam ser alteradas quando outras pessoas utilizarem a planilha, para que o resultado impresso mantenha sempre o mesmo padrão, sem dar outras opções aos usuários (acredito que o que você fez é até mais difícil).
então seria um codigo do tipo:
quebra de página 1: linha 35, coluna AB
quebra de página 2: linha 77, coluna AB
quebra de página 3: linha 111, coluna AB
desde já agradeço!!!