Transpor dados no VBA – Invertendo Linhas e Colunas

Transpor Dados
Transpor Dados

Muito útil em seu formato tradicional no Excel, a função de transposição de dados permite trocar facilmente linhas por colunas de uma área de dados no Excel.

Para desenvolvedores VBA essa necessidade é um pouco rara, mas não menos importante, principalmente quando manipulamos muitos dados em arrays e controles. Bom, surgiu a necessidade e encontrei um código muito bem feito que efetua a tarefa.

A função recebe um Array de Variants de 2 dimensões como um argumento e retorna o mesmo já transposto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Function Array2DTranspose(avValues As Variant) As Variant
    Dim lThisCol As Long, lThisRow As Long
    Dim lUb2 As Long, lLb2 As Long
    Dim lUb1 As Long, lLb1 As Long
    Dim avTransposed As Variant
    If IsArray(avValues) Then
        On Error GoTo ErrFailed
        lUb2 = UBound(avValues, 2)
        lLb2 = LBound(avValues, 2)
        lUb1 = UBound(avValues, 1)
        lLb1 = LBound(avValues, 1)
        ReDim avTransposed(lLb2 To lUb2, lLb1 To lUb1)
        For lThisCol = lLb1 To lUb1
            For lThisRow = lLb2 To lUb2
                avTransposed(lThisRow, lThisCol) = avValues(lThisCol, lThisRow)
            Next
        Next
    End If
    Array2DTranspose = avTransposed
    Exit Function
ErrFailed:
    Debug.Print err.description
    Debug.Assert False
    Array2DTranspose = Empty
    Exit Function
    Resume
End Function

Perfeita para trabalhar com dados, principalmente aqueles retornados em Recordsets ADO ou DAO.

Abraços e bom profeito!

Tomás Vásquez

Adobe Photoshop Express OnLine! Um passo a frente nas aplicações Web

A Adobe anunciou uma versão preliminar de sua poderosa ferramenta de edição de imagens, só que agora online, o Photoshop Express.

Não é necessário dizer que a proposta é algo bem mais simples do que a versão para Desktop, porém as ferramentas mais utilizadas estão disponíveis para uso. A experiência é agradável, nada que se compare ao Desktop, mas a contar com o fato de poder fazer isso de qualquer lugar, como de uma Lan House qualquer, é legal saber que sempre estará disponível para edição de imagens a ferramenta mais popular do mercado.

A Adobe já vem a algum tempo mandando e desmandando no que vai acontecer com o futuro da Web. A aquisição da Macromedia e os constantes conflitos com a gigante do software, a Microsoft constatam esse fato e colocar a Adobe em uma posição de peso, porém difícil pois quanto maior o tombo, maior a queda.

Deixando de lado a essa briga, é bom saber que para o desenvolvimento de uma ferramenta tão complexa como esta, a Adobe utilizou o framework Flex, criado por ela mesma para axiliar o desenvolvimento de aplicações em Flash. Como o Flash tem um foco prioritariamente para Designers e o desenvolvimento Web em simples HTML e AJAX começa a mostrar sinais de limitações frente a gigantesca demanda do mercado pela amigabilidade de sistemas, principalmente os sistemas web, a Adobe investiu em uma ferramenta que facilita a criação de aplicativos comerciais muito similar ao que as ferramentas de desenvolvimento de sistemas para Desktop e Web disponibilizam. O resultado tem sido sistemas que fazem fundamentalmente a mesma coisa, mas com interface excepcionalmente mais rica.

A comunidade de desenvolvedores tem se “ligado” nas vantagens que o Flex tem provido em relação a sistemas, portanto, para a felicidade dos usuários (na qual me incluo), esperem que em breve os sistema e sites convencionais passarão a trazer interfaces bem além do que o HTML tradicionalmente o faz.

Para saber mais:

Adobe Photoshop Express
https://www.photoshop.com/express/

Adobe Flex
http://www.adobe.com/products/flex/

Abraços

Tomás Vásquez

Funções do Excel do Inglês para o Português e Vice/Versa

Mais uma vez rodeando pelos fóruns e comunidades, achei um post com um arquivo muito interessante que contém a lista das principais funções do Excel com seus nomes em Inglês e o respectivo em Português.

É uma ótima referência para buscas de informações sobre uma determinado função na internet, já que o conteúdo predominante ainda é em inglês:

Categoria Inglês Português
Banco de dados DCOUNT BDCONTAR
Banco de dados DCOUNTA BDCONTARA
Banco de dados DSTDEVP BDDESVPA
Banco de dados DSTDEV BDEST
Banco de dados DGET BDEXTRAIR
Banco de dados DMAX BDMÁX
Banco de dados DAVERAGE BDMÉDIA
Banco de dados DMIN BDMÍN
Banco de dados DPRODUCT BDMULTPL
Banco de dados DSUM BDSOMA
Banco de dados DVAR BDVAREST
Banco de dados DVARP BDVARP
Banco de dados GETPIVOTDATA INFODADOSTABELADINÂMICA
Data e Hora NOW AGORA
Data e Hora YEAR ANO
Data e Hora DATE DATA
Data e Hora DATEVALUE DATA.VALOR
Data e Hora DAY DIA
Data e Hora WEEKDAY DIA.DA.SEMANA
Data e Hora DAYS360 DIAS360
Data e Hora TODAY HOJE
Data e Hora HOUR HORA
Data e Hora MONTH MÊS
Data e Hora MINUTE MINUTO
Data e Hora SECOND SEGUNDO
Data e Hora TIME TEMPO
Data e Hora TIMEVALUE VALOR.TEMPO
Estatísticas BETAINV BETA.ACUM.INV
Estatísticas COUNT CONT.NÚM
Estatísticas COUNTIF CONT.SE
Estatísticas COUNTA CONT.VALORES
Estatísticas COUNTBLANK CONTAR.VAZIO
Estatísticas CORREL CORREL
Estatísticas COVAR COVAR
Estatísticas GROWTH CRESCIMENTO
Estatísticas CRITBINOM CRIT.BINOM
Estatísticas KURT CURT
Estatísticas AVEDEV DESV.MÉDIO
Estatísticas STDEV DESVPAD
Estatísticas STDEVA DESVPADA
Estatísticas STDEVP DESVPADP
Estatísticas STDEVPA DESVPADPA
Estatísticas DEVSQ DESVQ
Estatísticas NEGBINOMDIST DIST.BIN.NEG
Estatísticas HYPGEOMDIST DIST.HIPERGEOM
Estatísticas LOGNORMDIST DIST.LOGNORMAL
Estatísticas NORMDIST DIST.NORMAL
Estatísticas NORMSDIST DIST.NORMP
Estatísticas CHIDIST DIST.QUI
Estatísticas BETADIST DISTBETA
Estatísticas EXPONDIST DISTEXPON
Estatísticas FDIST DISTF
Estatísticas GAMMADIST DISTGAMA
Estatísticas SKEW DISTORÇÃO
Estatísticas BINOMDIST DISTRBINOM
Estatísticas TDIST DISTT
Estatísticas STEYX EPADYX
Estatísticas FISHER FISHER
Estatísticas FISHERINV FISHERINV
Estatísticas FREQUENCY FREQÜÊNCIA
Estatísticas SLOPE INCLINAÇÃO
Estatísticas CONFIDENCE INT.CONFIANÇA
Estatísticas INTERCEPT INTERCEPÇÃO
Estatísticas NORMINV INV.NORM
Estatísticas NORMSINV INV.NORMP
Estatísticas CHIINV INV.QUI
Estatísticas FINV INVF
Estatísticas GAMMAINV INVGAMA
Estatísticas LOGINV INVLOG
Estatísticas TINV INVT
Estatísticas GAMMALN LNGAMA
Estatísticas LARGE MAIOR
Estatísticas MAX MÁXIMO
Estatísticas MAXA MÁXIMOA
Estatísticas MEDIAN MED
Estatísticas AVERAGE MÉDIA
Estatísticas GEOMEAN MÉDIA.GEOMÉTRICA
Estatísticas HARMEAN MÉDIA.HARMÔNICA
Estatísticas TRIMMEAN MÉDIA.INTERNA
Estatísticas AVERAGEA MÉDIAA
Estatísticas SMALL MENOR
Estatísticas MIN MÍNIMO
Estatísticas MINA MÍNIMOA
Estatísticas MODE MODO
Estatísticas RANK ORDEM
Estatísticas PERCENTRANK ORDEM.PORCENTUAL
Estatísticas STANDARDIZE PADRONIZAR
Estatísticas PEARSON PEARSON
Estatísticas PERCENTILE PERCENTIL
Estatísticas PERMUT PERMUT
Estatísticas POISSON POISSON
Estatísticas FORECAST PREVISÃO
Estatísticas PROB PROB
Estatísticas LINEST PROJ.LIN
Estatísticas LOGEST PROJ.LOG
Estatísticas QUARTILE QUARTIL
Estatísticas RSQ RQUAD
Estatísticas TREND TENDÊNCIA
Estatísticas CHITEST TESTE.QUI
Estatísticas FTEST TESTEF
Estatísticas TTEST TESTET
Estatísticas ZTEST TESTEZ
Estatísticas VAR VAR
Estatísticas VARA VARA
Estatísticas VARP VARP
Estatísticas VARPA VARPA
Estatísticas WEIBULL WEIBULL
Financeiras DB BD
Financeiras DDB BDD
Financeiras SLN DPD
Financeiras IPMT IPGTO
Financeiras MIRR MTIR
Financeiras NPER NPER
Financeiras PMT PGTO
Financeiras PPMT PPGTO
Financeiras SYD SDA
Financeiras RATE TAXA
Financeiras IRR TIR
Financeiras FV VF
Financeiras PV VP
Financeiras NPV VPL
Informações CELL CÉL
Informações ISNA É.NÃO.DISP
Informações ISNONTEXT É.NÃO.TEXTO
Informações ISBLANK ÉCEL.VAZIA
Informações ISERR ÉERRO
Informações ISERROR ÉERROS
Informações ISLOGICAL ÉLÓGICO
Informações ISNUMBER ÉNÚM
Informações ISREF ÉREF
Informações ISTEXT ÉTEXTO
Informações INFO INFORMAÇÃO
Informações N N
Informações NA NÃO.DISP
Informações TYPE TIPO
Informações ERROR.TYPE TIPO.ERRO
Lógica AND E
Lógica NOT NÃO
Lógica OR OU
Lógica IF SE
Lógica FALSE FALSO
Lógica TRUE VERDADEIRO
Matemáticas ABS ABS
Matemáticas ACOS ACOS
Matemáticas ACOSH ACOSH
Matemáticas RAND ALEATÓRIO
Matemáticas ROUND ARRED
Matemáticas FLOOR ARREDMULTB
Matemáticas ROUNDDOWN ARREDONDAR.PARA.BAIXO
Matemáticas ROUNDUP ARREDONDAR.PARA.CIMA
Matemáticas ASIN ASEN
Matemáticas ATAN ATAN
Matemáticas ATAN2 ATAN2
Matemáticas ATANH ATANH
Matemáticas COMBIN COMBIN
Matemáticas COS COS
Matemáticas COSH COSH
Matemáticas EXP EXP
Matemáticas FACT FATORIAL
Matemáticas DEGREES GRAUS
Matemáticas ODD ÍMPAR
Matemáticas INT INT
Matemáticas LN LN
Matemáticas LOG LOG
Matemáticas LOG10 LOG10
Matemáticas MDETERM MATRIZ.DETERM
Matemáticas MINVERSE MATRIZ.INVERSO
Matemáticas MMULT MATRIZ.MULT
Matemáticas MOD MOD
Matemáticas PRODUCT MULT
Matemáticas EVEN PAR
Matemáticas PI PI
Matemáticas POWER POTÊNCIA
Matemáticas RADIANS RADIANOS
Matemáticas SQRT RAIZ
Matemáticas ROMAN ROMANO
Matemáticas SIN SEN
Matemáticas SINH SENH
Matemáticas SIGN SINAL
Matemáticas SUM SOMA
Matemáticas SUMSQ SOMAQUAD
Matemáticas SUMPRODUCT SOMARPRODUTO
Matemáticas SUMIF SOMASE
Matemáticas SUMX2PY2 SOMAX2SY2
Matemáticas SUMX2MY2 SOMAX2Y2
Matemáticas SUBTOTAL SUBTOTAL
Matemáticas TAN TAN
Matemáticas TANH TANH
Matemáticas CEILING TETO
Matemáticas TRUNC TRUNCAR
Procura e ref. AREAS AREAS
Procura e ref. COLUMN COL
Procura e ref. COLUMNS COLS
Procura e ref. MATCH CORRESP
Procura e ref. OFFSET DESLOC
Procura e ref. ADDRESS ENDEREÇO
Procura e ref. CHOOSE ESCOLHER
Procura e ref. HYPERLINK HYPERLINK
Procura e ref. INDEX ÍNDICE
Procura e ref. INDIRECT INDIRETO
Procura e ref. ROW LIN
Procura e ref. ROWS LINS
Procura e ref. LOOKUP PROC
Procura e ref. HLOOKUP PROCH
Procura e ref. VLOOKUP PROCV
Procura e ref. TRANSPOSE TRANSPOR
Texto TRIM ARRUMAR
Texto CHAR CARACT
Texto CODE CÓDIGO
Texto CONCATENATE CONCATENAR
Texto FIXED DEF.NÚM.DEC
Texto RIGHT DIREITA
Texto LEFT ESQUERDA
Texto EXACT EXATO
Texto MID EXT.TEXTO
Texto SEARCH LOCALIZAR
Texto UPPER MAIÚSCULA
Texto LOWER MINÚSCULA
Texto DOLLAR MOEDA
Texto REPLACE MUDAR
Texto LEN NUM.CARACT
Texto PROPER PRI.MAIUSCULA
Texto FIND PROCURAR
Texto REPT REPT
Texto SUBSTITUTE SUBSTITUIR
Texto T T
Texto TEXT TEXTO
Texto CLEAN TIRAR
Texto VALUE VALOR

Para quem quiser em formato de arquivo do Excel para facilitar a busca por filtros, segue o arquivo:

 Lista_Funcoes_Excel_PT_EN.zip
Funções do Excel do Inglês para o Português e Vice/Versa (541.36 KiB)

Bom proveito!

Tecnologia e Programação