Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 1123 |
Saberexcel - o site das macros
Esta macro do aplicativo Microsoft Excel VBA, imprime e salva determinado documento com o valor desejado
da célula (E4). Resultado do nome arquivo salvo...: veja no exemplo: " Salva como:" (Meus Documentos 21-ago-2010-19 30 48)
Sub Imprime_Arquivo()
vCelula = Range("E4") ' na célula(E4) voce atribui (=Agora() )
Range("12:12").Select
Selection.RowHeight = 0
ThisWorkbook.SaveAs "C:\Meus documentos\" & vCelula & ".xls"
ActiveWindow.SelectedSheets.PrintOut Copies:=3, Collate:=True
MsgBox "A sua folha imprimida foi enviada, por favor, busque-a na impressora padrão", vbInformation
Application.OnTime Now() + TimeValue("00:00:01"), "AutoClose"
End Sub
Sub Encaminhando_Planilha()
On Error GoTo SaberErro
Planilha_Numero = InputBox("Entre com numero da planilha , Entre 0 se voce estiver iniciando", "TOTAL PLANILHAS CERTAS HOJE", Range("F2"))
Select Case Planilha_Numero
Case Else
Range("F2") = Planilha_Numero + 1
End Select
Exit Sub
SaberErro:
MsgBox "Entre com o número da Planilha válido!!", , "ERROR - SABEREXCEL"
Call Encaminhando_Planilha
End Sub
Sub AutoClose()
ThisWorkbook.Close SaveChanges:=False
End Sub
Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 913 |
Saberexcel - o Site das Macros
Criar um botão para impressão personalizado que chama uma determinada macro na barra de ferramentas
Macros do Aplicativo Microsoft Excel VBA, insere um botão personalizada na barra de ferramenta da planilha'
que chama uma outra macro configurada para impressão de acordo com o tamanho do texto, paisagem ou retrato.
mas veja bem Lúcia, no teu caso, aqui seria bom lançar uma macro que selecione a área corrente, para que seja
selecionado automaticamente, através de um range dinâmico, que funciona bem.
Sub Definir_botoes_personalizados()
Dim MeuBotao As CommandBarButton
Set MeuBotao = CommandBars("standard").Controls.Add(msoControlButton)
With MeuBotao
.Caption = "Impressao_Saberexcel"
.Style = msoButtonIconAndCaption
.FaceId = 4 'definir o icone impressora
.TooltipText = "Imprimir a seleçao SaberExcel" 'descrição da função
.OnAction = "Imprimir_Selecao" 'macro a executar
End With
End Sub
Essa macro será chamada pelo botão personalizado acima que será inserido na Barra de Ferramenta da planilha.
Sub Imprimir_Selecao()
With ActiveSheet.PageSetup
.PrintArea = Selection.Address 'define a zona de impressao
If Selection.Height > Selection.Width Then 'determina a orientação
.Orientation = xlPortrait
Else
.Orientation = xlLandscape
End If
.CenterHorizontally = True
.CenterVertically = True
End With
With ActiveSheet
.PrintOut 'chama a impressão
.PageSetup.PrintArea = False ' zona de impressão
.DisplayPageBreaks = False 'status da pagina
End With
End Sub
Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 1695 |
Saberexcel - o site das macros
Essa macro do Aplicativo Microsoft Excel VBA, configura minha impressão rodapé e cabeçalho
selecionando uma determinada área para impresssão, inserindo dados importantes como datas,
cabeçalhos personalizados, rodapés, e escolhendo o estilo de página, isso tudo através de
macros.
Sub Organizando_personalizacao_impressao()
Dim BotaoLinha As Integer, ImpData, CopiaW, LRodape, MontaRodape
Dim vPaginas As Integer, vUltimaColuna
vUltimaColuna = Application.CountA(ActiveSheet.Range("1:1"))
BotaoLinha = Application.CountA(ActiveSheet.Range("A:A"))
'observe nesta condição, se os dados for maior que coluna(6) imprime retrato, senão, paisagem
If vUltimaColuna >= 6 Then
vPaginas = 1 '1=xlPortrait (retrato)
Else
vPaginas = 2 '2=xlLandscape (paisagem)
End If
'============= personalize a impressao de suas páginas cabeçalhos e rodapés ==========
MontaRodape = "&8" & Chr(34) & "Excel VBA" & Chr(34) & _
" Reservado área de código dos Alunos SKY-XL-EVES®," & Chr(10) _
& "Fone # 1-800-XL-EVES®" & Chr(10) & "Sorria, você esta em questão!!!"
ImpData = Application.Text(Now(), "dd/mm/yyyy HH:mm:ss")
CopiaW = Chr(169) & Year(Now())
LRodape = "&8" & "*=Saberexcel" & Chr(10) & CopiaW & _
" Confidendencial Propridades dos Alunos Saberexcel"
Application.StatusBar = "Acertando um sistema de página"
ActiveSheet.Range(Cells(2, 1), Cells(BotaoLinha, vUltimaColuna)).Select
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = "&""Arial,Bold""ABCDEFG Agenda Telefonica" _
& Chr(10) & SpecialMsg
.RightHeader = ImpData
.LeftFooter = LRodape
.CenterFooter = "Pagina &P of &N"
.RightFooter = MontaRodape
.LeftMargin = Application.InchesToPoints(0.75)
.RightMargin = Application.InchesToPoints(0.75)
.TopMargin = Application.InchesToPoints(1)
.BottomMargin = Application.InchesToPoints(1)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.PrintNotes = False
.CenterHorizontally = True
.CenterVertically = False
.Orientation = vPaginas 'Landscape or Portrait(Paisagem e retrato)
.Draft = False
' .PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1 'força uma largura de página
.FitToPagesTall = False 'Retorna ou define a altura, em número de páginas, pela qual a planilha será dimensionada quando impressa. Só se aplica a 'planilhas.
End With
ActiveWorkbook.Save
Application.StatusBar =""
[H1].Select 'saida de macro
End Sub
Aprenda Microsoft Excel VBA (Visual Basic Application) ---((SaberExcel))---
Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 1080 |
Saberexcel - o site das macros
Imprimir área de um range dinâmico
Macro do Aplicativo Microsoft Excel VBA, imprime uma determinada área de um range dinâmico, que expande tamanho com a digitação:
Inserindo um range dinâmico para impressão de uma determinada área que expande com a digitação
você vai conseguir isso através de um range dinâmico:
nomear o range como "impressao" ou outro nome qualquer
=DESLOC(Extrair!$B$3;0;0;CONT.VALORES(Extrair!$B:$B);6)
Sub Imprimir_Range_Dinamico
Range("Impressao").PrintOut Copies:=1
End Sub
determinar área a ser imprimida
esta área vai da coluna B (Range(b3) mais seis colunas a frente
dos dados digitados.
Para inserir um range dinâmico abra a caixa de diálogo Definir Nome :
1) em sheet1 selecione os dados na coluna b (b6:bn)
2)<Inserir <Nome <Definir
Nome..............: impressao
Refere-se à.......: =DESLOC(Extrair!$B$3;0;0;CONT.VALORES(Extrair!$B:$B);6)
Aprenda Microsoft Excel VBA --((SaberExcel))--
Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 1051 |
Saberexcel - o site das macros
Impedindo a impressão se célula(A1) der diferença em determinada operação matemática.
Procedimento do Aplicativo Microsoft Excel VBA bloqueia a impressão quando der uma diferença em um determinado range
é só implementar o evento Workbook_BeforePrint com o procedimento abaixo, veja:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Range("A1").Value <> 0 Then
Msg = MsgBox("Valor de A1 é diferente de zero. Deseja realmente imprimir?", vbYesNo + vbCritical, "Saberexcel - site das macros")
If Msg = vbNo Then
Cancel = True
End If
End If
End Sub
'Código para o vba cancelar ou yes / no
'If Range("A1").Value <> 0 Then
' Msg = MsgBox("Valor de A1 é diferente de zero. Deseja realmente imprimir?", vbYesNo + vbCritical, "Saberexcel - site das macros")
' If Msg = vbNo Then
' Cancel = True
' End If
'End If
Aprenda Microsoft Excel VBA --(SaberExcel)--
Adquira já o Acesso Imediato
à Area de Membros
Aprenda Excel VBA com Simplicidade de
códigos e Eficácia, Escrevendo Menos e
Fazendo Mais.
'-------------------------------------'
Entrega Imediata:
+ 500 Video Aulas MS Excel VBA
+ 35.000 Planilhas Excel e VBA
+ Coleção 25.000 Macros MS Excel VBA
+ 141 Planilhas Instruções Loops
+ 341 Planilhas WorksheetFunctions(VBA)
+ 04 Módulos Como Fazer Excel VBA
+ Curso Completo MS Excel VBA
+ Planilhas Inteligentes
<script type="text/javascript"><!--
google_ad_client = "ca-pub-2317234650173689";
/* retangulo 336 x 280 */
google_ad_slot = "0315083363";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel,
Sobre as WorksheetFunctions Funções de Planilhas que retornam valores do VBA