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 dynamic. Mostrar todas as postagens
Mostrando postagens com marcador dynamic. Mostrar todas as postagens

VBA Access - Inserindo SQL Dinâmico na Query - Access 2013 Generate dynamic SQL statements



O MS Access é tão flexível e dinâmico, que nos permite facilidades criativas inimagináveis. Bem, agora são imagináveis. Veja  a seguir...

Antigamente, a dois ou três anos atrás, quando desejávamos alterar uma query que não servia mais aos nossos propósitos, usávamos a velha técnica de apagá-la, criando uma nova com os comandos SQL que desejávamos.

De fato, isso não causava grandes transtornos dentro do banco de dados, uma vez que não ocorresse excessivamente, transformando-se numa ação de processamento paralelo. Mas (sempre há um mas), se esta ação fosse constante e requeresse processamento contínuos, essa técnica não se aplicaria tão bem, trazendo transtornos tais como a corrupção do banco, dependendo do tipo de código SQL que estivermos gerando. 

A versão do MS Access 2013 permiti-nos aplicar uma técnica mais simples, avançada, e eficiente. Esta não trará quaisquer transtornos e tão trará morosidade as nossas aplicações.

Qual o segredo?


Reflitamos um pouco:


Uma query nada mais é do que mais um objeto dentro do banco de dados.

Ao alinharmos esse conceito básico, podemos começar a ter ideias. Por exemplo, todo objeto é composto por propriedades.


O código que compõe o objeto é, de certo modo, parte das suas propriedades. E se pudermos trocar o valor da propriedade?


Sim, podemos fazer isso. Como?


Execute as seguintes funcionalidades:


Dim nSQL01 as String

Let nSQL01 = "Select * from Tbl_Bernardes"



    ' Criando a query fisicamente.
    'Call ShowProcess ("Criando a query fisicamente: 'qry_01_Bernardes'", nSQL01)  ' Essa função mostra uma mensagem na tela.
    Call UpdateQuery ("qry_01_Bernardes", nSQL01)

Sub UpdateQuery (QueryName, SQL)
    '        Author: André Luiz Bernardes - Bernardess@gmail.com.
    '          Date: 22/01/2013 - 09:30.
    '   Application: Bernardess Application
    ' Functionality: Criando fisicamente uma query.

    ' Usa o nome e a String SQL, caso a query não exista altera o conteúdo dela.
    If IsNull(DLookup("Name", "MsysObjects", "Name='" & QueryName & "'")) Then
        '' cria-a ...
        CurrentDb.CreateQueryDef QueryName, SQL
    Else
        '' Caso contrário, altera o seu conteúdo.
        Let CurrentDb.QueryDefs(QueryName).SQL = SQL
    End If
End Sub


Simples e limpo! Divirta-se.

Tags: VBA, Excel, SQL, query, queries, generate, dynamic, statements, Access 2013, 


VBA Excel - alterando os Tipos de um Gráfico - ChartType Property

Inline image 2

Alguns dos Dashboards desenvolvidos no MS Excel, permitem que os usuários mudem o tipo de gráfico visualizado. Isso é muito produtivo quando contribui para a compreensão dos dados. Mas, é importante lembar que alguns tipos de gráficos não ficam disponíveis para as PivotChart Report.

Seria útil saber quais são as propriedades (do tipo constantes), que ChartType do objeto ChartObjects suporta:


xlLine. Line
xlLineMarkersStacked. Stacked Line with Markers
xlLineStacked. Stacked Line
xlPie. Pie
xlPieOfPie. Pie of Pie
xlPyramidBarStacked. Stacked Pyramid Bar
xlPyramidCol. 3D Pyramid Column
xlPyramidColClustered. Clustered Pyramid Column
xlPyramidColStacked. Stacked Pyramid Column
xlPyramidColStacked100. 100% Stacked Pyramid Column
xlRadar. Radar
xlRadarFilled. Filled Radar
xlRadarMarkers. Radar with Data Markers
xlStockHLC. High-Low-Close
xlStockOHLC. Open-High-Low-Close
xlStockVHLC. Volume-High-Low-Close
xlStockVOHLC. Volume-Open-High-Low-Close
xlSurface. 3D Surface
xlSurfaceTopView. Surface (Top View)
xlSurfaceTopViewWireframe. Surface (Top View wireframe)
xlSurfaceWireframe. 3D Surface (wireframe)
xlXYScatter. Scatter
xlXYScatterLines. Scatter with Lines.
xlXYScatterLinesNoMarkers. Scatter with Lines and No Data Markers
xlXYScatterSmooth. Scatter with Smoothed Lines
xlXYScatterSmoothNoMarkers. Scatter with Smoothed Lines and No Data Markers
xl3DArea. 3D Area
xl3DAreaStacked. 3D Stacked Area
xl3DAreaStacked100. 100% Stacked Area
xl3DBarClustered. 3D Clustered Bar
xl3DBarStacked. 3D Stacked Bar
xl3DBarStacked100. 3D 100% Stacked Bar
xl3DColumn. 3D Column
xl3DColumnClustered. 3D Clustered Column
xl3DColumnStacked. 3D Stacked Column
xl3DColumnStacked100. 3D 100% Stacked Column
xl3DLine. 3D Line
xl3DPie. 3D Pie
xl3DPieExploded. Exploded 3D Pie
xlArea. Area
xlAreaStacked. Stacked Area
xlAreaStacked100. 100% Stacked Area
xlBarClustered. Clustered Bar
xlBarOfPie. Bar of Pie
xlBarStacked. Stacked Bar
xlBarStacked100. 100% Stacked Bar
xlBubble. Bubble
xlBubble3DEffect. Bubble with 3D effects
xlColumnClustered. Clustered Column
xlColumnStacked. Stacked Column
xlColumnStacked100. 100% Stacked Column
xlConeBarClustered. Clustered Cone Bar
xlConeBarStacked. Stacked Cone Bar
xlConeBarStacked100. 100% Stacked Cone Bar
xlConeCol. 3D Cone Column
xlConeColClustered. Clustered Cone Column
xlConeColStacked. Stacked Cone Column
xlConeColStacked100. 100% Stacked Cone Column
xlCylinderBarClustered. Clustered Cylinder Bar
xlCylinderBarStacked. Stacked Cylinder Bar
xlCylinderBarStacked100. 100% Stacked Cylinder Bar
xlCylinderCol. 3D Cylinder Column
xlCylinderColClustered. Clustered Cone Column
xlCylinderColStacked. Stacked Cone Column
xlCylinderColStacked100. 100% Stacked Cylinder Column
xlDoughnut. Doughnut
xlDoughnutExploded. Exploded Doughnut
xlLineMarkers. Line with Markers
xlLineMarkersStacked100. 100% Stacked Line with Markers
xlLineStacked100. 100% Stacked Line
xlPieExploded. Exploded Pie
xlPyramidBarClustered. Clustered Pyramid Bar
xlPyramidBarStacked100. 100% Stacked Pyramid Bar

Segue exemplo de como usar essas constantes:


Este exemplo define o tamanho do gráfico de Bolhas num grupo com 200% do tamanho padrão, caso o gráfico esteja no padrão Bolhas 2D.

With Worksheets(1).ChartObjects(1).Chart      If .ChartType = xlBubble Then          .ChartGroups(1).BubbleScale = 200      End If  End With

Reference:

Tags: VBA, Excel, chart, dynamic, Chart Object, Series, Type, Property, chart, Gráfico, tipo, série, objeto , Bolhas, Bubbles
diHITT - Notícias