Propósito

✔ Programação GLOBAL® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog devem ser tratados como consultoria freelance. Queiram contatar-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.

.: Vitrine

Carregando artigos...

Views

Mostrando postagens com marcador Imagem. Mostrar todas as postagens
Mostrando postagens com marcador Imagem. Mostrar todas as postagens

PIECE OF CAKE - Convertendo Texto em Imagem - Convert Text to an Image using the VBA Windows API


Nesta época de Mídias Sociais e grande necessidade de publicarmos KPIs e Dashboards com insights baseados em informações atualizadas, termos uma solução como a demonstrada abaixo será muito útil no dia a dia.

Sub PublishExcelRangeAsImage (r As Excel.Range, stFileNamePathForImage As String, Optional stImageType = "BMP")
 '
 ' Copies a range in Excel, converts it to a picture, and saves it as an image file.
 ' r = The range you want to copy and convert to an image.
 ' stFileNamePathForImage = Full path, without the period (.) and extension of the destination file.
 ' stImageType = The extension for the filename; also determines the type of image saved to disk.
 ' stImageType can be "bmp", "gif", or "jpg". "bmp" is default.
 '
 Dim c As Excel.Chart
 Dim wsSave
 Dim wbSave As Excel.Workbook
 Dim fDisplayAlerts As Boolean

 stImageType = UCase(stImageType)
 '
 ' In case another Workbook is active, save it so we can restore it when we are done.
 ' We need to do this because, later, we will change the active sheet to a chart.
 '
 Set wbSave = Excel.ActiveWorkbook
 Set wsSave = wbSave.ActiveSheet
 '
 ' Create a temporary chart object. This is where the image will be created.
 '
 Set c = r.Worksheet.Parent.Charts.Add
 '
 ' In Excel 2007, a new chart is no lonter empty; therefore, clear it.
 '
 c.ChartArea.Clear

 c.ChartArea.Height = r.Height * 2 ' Make sure the ChartArea is bigger than
 c.ChartArea.Width = r.Width * 2 ' the image, or image will be made smaller
 '
 ' Copy the image from the range object to the chart.
 '
 r.CopyPicture xlScreen, xlBitmap
 c.Paste
 '
 ' Position the image, as Excel doesn't do this well on it's own.
 ' Note, since we cleared the chart before pasting the image,
 ' we can be sure that the image is the only shape on the chart.
 ' Thus, we are safe to directly address shape 1, from the shape
 ' collection and know it's the image.
 '
 Let c.Shapes(1).Left = 0
 Let c.Shapes(1).Top = 0
 Let c.Shapes(1).Height = r.Height
 Let c.Shapes(1).Width = r.Width
 '
 ' Prevent the image from resizing when we resize the chart.
 '
 Let c.Shapes(1).Placement = xlFreeFloating
 '
 ' Now make the chart the same size as the image.
 '
 ' We need to activate the chart first because of a timing issue. If we don't
 ' activate it, the code fails when we set the height, unless we put a delay into the code.
 ' Better to activate it than put in a delay.
 '
 c.Activate
 Let c.ChartArea.Height = r.Height
 Let c.ChartArea.Width = r.Width
 '
 ' Save the image as a file.
 '
 c.Export stFileNamePathForImage & "." & stImageType, stImageType
 '
 ' We are done. Delete the chart. Note, we first need to turn off alerts, or else,
 ' Excel prompts us to make sure we really want to delete it.
 '
 Let fDisplayAlerts = Application.DisplayAlerts
 Let Application.DisplayAlerts = False
 c.Delete
 Let Application.DisplayAlerts = fDisplayAlerts

 Set c = Nothing
 '
 ' Return focus back to the original workbook/worksheet that was active
 ' when this code began.
 '
 wsSave.Activate

 Set wbSave = Nothing
 Set wsSave = Nothing

End Sub


#A&A #API #Converter #Dashboard #Imagem #KPI #PIECEOFCAKE #Text #Texto #WindowsAPI #POC #VBA 


Defina a Latitude e a Longitude - Find Latitude and Longitude of any address using Google Map API and VBA


VBA Excel - Traduzindo Planilhas - MS Excel VBA Script to Translate worksheets using the Google Translate API
VBA Excel - Traduzindo Planilhas - MS Excel VBA Script to Translate worksheets using the Google Translate API

Excel - Manipule o Google Maps em sua Planilha - Put a Google Map in your Spreadsheet
Excel - Manipule o Google Maps em sua Planilha - Put a Google Map in your Spreadsheet

Convertendo Texto em Imagem - Convert Text to an Image using the VBA Windows API
Convertendo Texto em Imagem - Convert Text to an Image using the VBA Windows API

Correção de Métricas - For Subscripts, Superscripts and Common Typos
Correção de Métricas - For Subscripts, Superscripts and Common Typos

MS Access - Cinco Formas Manuais de Reparo
MS Access - Cinco Formas Manuais de Reparo

MS Access e MS Word - Técnica de Automação
MS Access e MS Word - Técnica de Automação

Microsoft Access - Removendo Prefixo das Tabelas
Microsoft Access - Removendo Prefixo das Tabelas

Sempre Use Stored Procedures - Always Use Stored Procedures
Sempre Use Stored Procedures - Always Use Stored Procedures

A&A - Dados ou Informações?
A&A - Dados ou Informações?

Consulte-nos

⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 


⬛◼◾▪ CONTATO ▪

VBA Word Tips - Insira Imagens de um diretório no Word - Batch insert pictures with filenames as captions

Inline image 1












Imagine que o seu trabalho envolva tirar fotos e apresentá-las num relatório com comentários, que são na verdade os nomes dos respectivos arquivos, dentro de um bem elaborado template do MS Word.

Seria muito bom ter uma ferramenta que pudesse fazer a importação de todas as fotos de um diretório e colocar os seus respectivos nomes de arquivo como comentário abaixo das fotos não seria?

Outra provável situação seria precisar inserir imagens de uma aplicação num manual de uma aplicação.

Você já capturou todas as imagens, colocou os respectivos nomes e agora deseja inserí-las no seu documento, acrescentando os respectivos textos.

Mas ainda há mais uma possibilidade na qual consigo pensar:

Imagine que a sua aplicação MS Excel, conectado ao MS Access, contém uma macro que exporta todos os seus gráficos como imagens para um diretório.

Mas a sua macro não exporta somente gráficos, ela exporta também tabelas, conjuntos de dados, Ranges nomeados e mesmo alguns Mapas que inseriu para ilustrar as áreas que desejava dar foco nas suas análises.

Digamos que agora você precise criar um relatório tal como um Annual Report ou um Financial Report.

Então divirta-se com a solução abaixo.

O código abaixo permite que insira fotos .JPG:

Sub InsertAllPicsWithCaption() 
    Dim file 
    Dim path As String 

    Let path = "C:\Bernardes\Photos\" 
    Let file = Dir(path & "*.jpg") 
     
    CaptionLabels.Add Name:="Filename" 

    Do While file <> "" 

        With Selection 
            .EndKey Unit:=wdStory 
            .InlineShapes.AddPicture FileName:=path & file, _ 
            LinkToFile:=False, SaveWithDocument:=True 
            .InsertAfter vbCrLf & vbCrLf 
            .Collapse 0 
            .MoveLeft Unit:=wdCharacter, Count:=1 
            .Style = "Comentário: " 
            .Text = path & file 
        End With 

        Let file = Dir() 
    Loop 
    Selection.EndKey Unit:=wdStory 
End Sub

Neste código poderá insirir fotos .JPG, .PNG e . TIF:

Sub InsertAllPicsWithCaption2() 
    Dim file 
    Dim path As String 

    Let path = "C:\Bernardes\Photos\" 
    Let file = Dir(path & "*.jpg") 
     
    CaptionLabels.Add Name:="Filename" 

    Do While file <> "" 
         ' Testando as extensões...
        If UCase(Right(file, 3)) = "PNG" Or _ 
           UCase(Right(file,3)) = "TIF" Or _ 
           UCase(Right(file,3)) = "JPG" Then 

            With Selection 
                .EndKey Unit:=wdStory 
                .InlineShapes.AddPicture FileName:=path & file, _ 
                LinkToFile:=False, SaveWithDocument:=True 
                .InsertAfter vbCrLf & vbCrLf 
                .Collapse 0 
                .MoveLeft Unit:=wdCharacter, Count:=1 
                .Style = "Comentário: " 
                .Text = path & file 
            End With 

        End If 

        Let file = Dir() 
    Loop 

    Selection.EndKey Unit:=wdStory 
End Sub 

Tags: Tips, Word, batch, pictures, pic, imagem, caption, legenda, .JPG, .PNG, .TIF, 



Excel Tips - Delete todas as Imagens e Gráficos de uma Planilha - Delete all Pictures or Charts on Worksheet

Inline image 1
Esta dica permite-nos deletar todas as imagens ou gráficos contidos na nossa planilha. Não há necessidade de selecionarmos cada imagem manualmente, selecionando-as uma a uma.

Apenas digite a tecla de atalho F5 com o MS Excel aberto ou vá para a caixa de diálogo.



Em seguida clique no botão Special da caixa de diálogo.



Selecione a opção Objetos desejados e clique no botão OK para fechar a caixa de diálogo.

Agora que tem todos os objetos da sua planilha selecionados, cheque se não algum deles que deseja manter na planilha, tal como a logomarca da sua empresa ou algo assim. Em seguida pressione a tecla Delete e todos os objetos serão deletados ao mesmo tempo.

TagsExcel, Tips, 



Access 2010 Tip - Compartilhando a mesma Imagem - Shared images

Inline image 7




Tradicionalmente, quando criamos aplicações no MS Access, as imagens que usamos são objetos individuais nos nossos formulários e relatórios. Então, quando precisamos alterar a imagem de um grupo de controles em vários formulários e relatórios dentro da nossa aplicação, precisamos passar por cada controle, um por um, mudando a imagem.


Mas, com o passar do tempo descobrimos que podíamos dar uma "volta" no Access. Era preciso apenas que inseríssemos um subformulário com a logo que o cliente queria usar e caso essa mudasse, precisaríamos mudar apenas neste subformulário, ou mesmo num subrelatório. Muito bom! Mas isso não era útil para as imagens nos botões.

Consideremos também o caminho para a construção de formulários na web: Uma técnica comum na construção de aplicações web é agruparmos as imagens e reutilizá-las, tanto quanto possível. Cada solicitação que o navegador precisa fazer ao servidor é uma sobrecarga adicional que retarda a página processada. Browsers são muito mais rápidos em busca de dados fora do cache do que a partir de um servidor web que pode estar na outra metade do mundo.

Finalmente, no MS Access 2010, somos apresentados a uma Galeria de Imagens que torna mais fácil o gerenciamento e compartilhamento dos recursos no nosso banco de dados com o benefício adicional da página ser carregada mais rapidamente no browser. Vejamos um exemplo ...


Adicione uma imagem

Aqui está um modelo típico no MS Access 2010. Vamos para o formulário AssetDetails para adicionarmos uma marca ao cabeçalho:


Vamos começar por olhar para cima na área de design.


Este é um banco de dados web e usa a nova Galeria de Imagens exclusivamente para manipulação de imagens no seu banco de dados. Também notará que a galeria já está preenchida com imagens que usamos na criação dos templates ativos. Mas queremos adicionar uma nova imagem de cabeçalho neste formulário.

Cliquemos em "Procurar" na parte inferior da galeria. Isso nos permitirá selecionar uma nova imagem. Acessaremos novamente  o Form para que adicionemos o novo controle de imagem. Vamos deixá-la apenas à esquerda do nosso título e, em seguida, redimensioná-la ao nosso gosto.
















A propriedade "Picture" mostra um drop-down contendo todas as nossas imagens disponíveis que podemos atribuir a esse objeto.

Clicando nas reticências, a propriedade permitirá que carreguemos outra imagem na Galeria de Imagens.


Altere a imagem

Digamos que tenhamos gostado da nova imagem e passemos a utilizá-la em todos os novos formulários e relatórios que desenvolvemos. Mas, após mostrarmos o trabalho para o nosso cliente, este no informa que precisamos usar o novo logotipo da empresa em todo o banco de dados. Então, precisamos entrar e atualizar essa imagem.

Abra a Galeria de Imagens e coloque o botão direito do mouse sobre a imagem que precisa atualizar, selecione "Update". Também podemos usar o menu contextual para renomear ou apagar uma imagem da galeria de imagens.


Depois disso, basta selecionarmos a nova imagem no navegador de arquivos, e voilá! Todas as instâncias nas quais a nossa imagem estiver, no banco de dados, terão sido alteradas para a nova!
















Divirtam-se!

Tags: Access, image, imagem, imagens, Ric Lewis, 




diHITT - Notícias