Removendo o Composer do menu de contexto do Windows 10

Publicado em 11/04/2018 | () comentários

Composer é uma ferramenta para gerenciamento de dependências para o PHP. Com algumas poucas linhas de configurações você define todas as bibliotecas de terceiros ou mesmo suas que deseja utilizar em seu projeto, porém, se você instalou e não se interessou pelo Composer, após desinstalar você terá uma surpresa: O menu de contexto do composer permanece no Windows 10.


Para remover definitivamente este menu, será necessário excluir um registro do Windows.

1. Acesse a janela de execução do Windows pressionando WINDOWS + R ou navegando pelo menu Iniciar

2. Escreva regedit e execute

3. Navegue até o seguinte caminho:

\HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\

4. Exclua o registro ComposerSetup


Categoria: php windows

Como remover extensão .php e criar URL amigável

Publicado em 04/04/2018 | () comentários

Se você deseja que suas páginas web sejam acessadas sem a extensão .PHP, basta seguir o seguinte procedimento:

1. Abra o bloco de notas e coloque seguinte conteúdo dentro:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
2. Salve o arquivo sem extensão (não utilize a extensão .txt) na raiz do seu site e pronto.

Ao acessar as páginas do seu site sem a extensão .php tudo funcionará normalmente.

Obs.: Este redirecionamento só funciona em servidor Linux.


Categoria: php desenvolvimento

Executando uma instrução INSERT, DELETE ou UPDATE SQL dentro do VBA

Publicado em 27/10/2017 | () comentários

O VBA possui nativo várias funções que executam operações prontas de obtenção (SELECT) de dados, podendo estas funções somar, obter, contar valores de um campo em uma tabela com determinado critério. Estas funções nativas do VBA basicamente são: DLOOKUP, DCOUNT, DSUM, etc, porém, para executar operações de modificação (INSERT, DELETE, UPDATE) nos registros, é necessário criar instruções em SQL agregada ao VBA.

Criando uma instrução SQL dentro do VBA

Para criar a instrução SQL dentro do VBA basta utilizar o comando:

CurrentDb.execute()

Este comando executa uma instrução SQL no banco de dados atual. A maneira correta de se declarar a instrução é declarando uma variável que define o banco desejado (pois é possível executar esta ação em um banco externo) e a função execute

Dim banco As DAO.Database
Set banco = CurrentDb
banco.Execute ("AQUI VAI O SQL")

Dentro do argumento EXECUTE, deverá ser colocado o SQL.

Exemplo prático

No exemplo abaixo iremos realizar um INSERT na tabela cad_pessoa, inserindo nas colunas dataRegistro, ativo e nome. Cada um destes campos conterá um conteúdo diferente e deve ser declarado corretamente dentro do SQL:

CampoTipo de conteúdoOrigem do valor
dataRegistroData (Date)Valor dinâmico, informado através da função Now() do VBA. A data deve ser envolvida com aspas simples e hashtag.
ativoNúmero (Integer)Valor fixo. No caso é o número 1. Números podem ser declarados sem aspas dentro do SQL
nomeTexto (String)

Valor coletado a partir de um campo no formulário. O campo se chama txtNome. Como o campo é texto, deve ser envolvido com aspas simples dentro do SQL.

A instrução SQL ficará da seguinte maneira:

banco.Execute ("INSERT INTO cad_pessoa (dataRegistro, ativo, nome) VALUES  ('#" & Now() & "#', 1, " & Nz(Me.txtNome.value) & ")")

No código acima, o trecho em cinza corresponde ao corpo da declaração da função EXECUTE. Os trechos em azul correspondem ao SQL e os trechos em vermelho são declarações VBA. Concatene o valor de origem VBA com SQL através do símbolo &, lembrando de fechar e abrir com aspas duplas. 

Categoria: access vba sql

Obtendo caminho completo (path) de uma tabela no banco de dados ACCESS

Publicado em 06/10/2017 | () comentários

Considerando que sua aplicação ACCESS está vinculada em apenas um banco de dados (tabelas separadas da aplicação), a função CurrentDb possui um recurso extra para se obter o caminho completo das tabelas. Pegando o caminho de uma tabela, saberemos o caminho de todas.

Coloque a linha de código abaixo dentro de qualquer evento do ACCESS e ela retornará o caminho da tabela. Este caminho será exatamente onde as tabelas da sua aplicação estão salvas.

Obs: substitua o trecho destacado pelo nome de qualquer uma de suas tabelas.

Obtendo caminho completo

A função CurrentDb referencia ao banco atual e a instrução TableDefs referencia a tabela específica do banco atual. Em seguida a instrução Connect retorna o path da tabela

CurrentDb.TableDefs("nome_tabela").Connect

Obtendo parte do caminho

A função Mid retorna parte de uma string. No caso, estamos retornando a partir do caractere 5, contado da esquerda pra direita.

Mid(CurrentDb.TableDefs("nome_tabela").Connect, 10)

Categoria: access vba função

Criando validação de formulário com VBA

Publicado em 26/07/2017 | () comentários

A validação do preenchimento de campos de um formulário no ACCESS utilizando VBA é muito simples.

No evendo AO CLICAR do botão SALVAR, insira o seguinte código:

'validação dos campos
'caso um dos campos não esteja preenchido, a ação para dentro do sub
If Nz(Me.campo1) = "" Then
    MsgBox "Preencha o campo", vbCritical
    Exit Sub
ElseIf Nz(Me.campo2) = "" Then
    MsgBox "Preencha o campo", vbCritical
    Exit Sub
ElseIf Nz(Me.campo3) = "" Then
    MsgBox "Preencha o campo", vbCritical
    Exit Sub
ElseIf Nz(Me.campo4) = "" Then
    MsgBox "Preencha o campo", vbCritical
    Exit Sub
Else

    'salva data e usuario de alteração/registro
   DoCmd.RunCommand acCmdSaveRecord
 
End If

Funcionamento

Ao clicar no botão SALVAR, a validação passa por todos os campos (destaque em azul). Caso um dos campos esteja vazio, a mensagem dentro de MSGBOX é apresentada e o código para de ser executado com EXIT SUB.

Caso nenhum dos campos obrigatórios esteja vazios, o IF passa direto para o ELSE e salva o registro com o comando: DoCmd.RunCommand acCmdSaveRecord


Categoria: vba access

PROCV - retornando colunas à esquerda do valor procurado

Publicado em 23/07/2017 | () comentários

A PROCV é uma das funções mais utilizadas e interessantes do Excel. Muitos acham a função um pouco complexa, mas aqui neste tutorial você irá perceber que ela não é tão complexa assim.

A PROCV basicamente procura um valor na primeira coluna de uma matriz (matriz_tabela) selecionada e retorna uma coluna específica (num_indice_coluna) quando o valor procurado for encontrado. Você pode retornar qualquer coluna da matriz, bastando especificar a coluna desejada no argumento num_indice_coluna.

A desvantagem do PROCV

A única desvantagem da PROCV é justamente retornar somente valores à direita da matriz. O valor procurado será sempre a primeira coluna da matriz e os valores retornados serão sempre os que existirem da primeira coluna para a direita, nunca será possível retornar valores que estão à esquerda da coluna

Como fazer o PROCV retornar as colunas à esquerda da matriz?

A solução é muito simples, porém iremos substituir o PROCV por duas outras funções: 

Nesta fórmula iremos executar a mesma ação que o PROCV, porém:

  • A função ÍNDICE irá indicar a coluna de retorno (azul)
  • A função CORRESP irá realizar a busca do valor na coluna procurada (amarela)

A fórmula

A fórmula ficará da seguinte maneira:

=ÍNDICE(coluna_retorno; CORRESP( valor_procurado ; coluna_procurada ; 0 ))

Resumindo: O ÍNDICE irá demarcar a coluna que queremos retornar e o CORRESP irá procurar o valor na coluna que queremos procurar, ao encontrar o CORRESP irá indicar ao ÍNDICE em qual linha está o valor desejado. Desta forma você pode colocar a coluna de retorno em qualquer posição da matriz, à direita ou à esquerda da coluna procurada. 


No exemplo acima, procuramos o valor 28 da célula I4 na coluna D e ao encontrar retornamos o valor 26 que corresponde a mesma linha que 28.

Google e Facebook lançam curso online em português de Marketing Digital

Publicado em 09/07/2017 | () comentários


A Udacity, universidade de tecnologia do Vale do Silício, desenvolveu em parceria com a Google, Facebook, MailChimp, HubSpot, Moz e HootSuite no mês de Abril, um curso online de especialização em Marketing Digital, já traduzido para português. O curso tem duração de 3 meses e as aulas são disponibilizadas semanalmente.

“Este é o único curso em que o aluno aprende com o Google como aumentar a relevância orgânica de seu site; com o Facebook como otimizar sua segmentação de anúncios nas redes sociais com o Hubspot sobre como construir uma estratégia de marketing de conteúdo efetiva, por exemplo”, diz Carlos Souza, diretor-geral da Udacity para América Latina.

As inscrições estarão disponíveis até dia 17/07 as 10h com valor de R$1990 (à vista) ou em 9 x R$ 249 (R$2241). Faça aqui a sua inscrição

Os projetos desenvolvidos no curso serão publicados em um portfólio de cada aluno, após revisão de especialistas das empresas. Você terá em seu currículo a formação com a marca das gigantes do mercado.

Como quebrar linha com VBA?

Publicado em 27/06/2017 | () comentários

Existem duas formas de pular linha dentro do VBA, seja declarando a quebra dentro de uma string ou dentro de um campo richtext.

Dentro de uma string

Utilize o código abaixo concatenado com sua string:

chr(13)

Exemplo:

No exemplo abaixo estamos armazenando na variável var o texto com a quebra de linha

var = "Não encontramos valores " & Chr(13) & "Deseja cadastrar?"

Dentro de um richtext

Um campo richtext é um controlador que interpreta declarações em HTML. Portanto, basta utilizar as tags de formatação em HTML:

<br>

Exemplo

No Access, dentro de um relatório, crie um novo campo e na guia DADOS da folha de propriedades defina o Formato de texto como RICHTEXT. Estamos apresentando no campo a informação do campo [nome] da tabela.

="Seja bem vindo(a) " & [nome] & " a nossa empresa. <br>Atenciosamente."
Categoria: vba access excel

Função VBA UNIRTEXTO, para concatenar valores com um separador

Publicado em 23/06/2017 | () comentários

Você já conhece a função UNIRTEXTO do Excel? Caso seu Excel seja 2013 ou superior, você não precisa utilizar esta função VBA abaixo, mas, caso seja uma versão anterior, a função abaixo executa o mesmo procedimento que a UNIRTEXTO.

A função UNIRTEXTO pega um intervalo de valores (linhas ou colunas) e junta em uma única célula, concatenando os valores separados por um caractere ou por um texto qualquer. Você pode concatenar um intervalo imenso de dados separados por vírgula para criar um script SQL, por exemplo.

Criando a função

  1. Acesse o Excel
  2. Clique na aba DESENVOLVEDOR
  3. Clique em VISUAL BASIC
  4. Na janela do VISUAL BASIC clique em INSERIR
  5. Selecione a opção MÓDULO
  6. Cole o código abaixo e salve o módulo como CLASSES
Function JUNTAR(separador As String, ignorarvazio As String, valores As Range)
    
    Dim r As Range
    Dim res As String
    
    Application.Volatile
    'pesquisa na seleção de células
    For Each r In valores
    
        'ignorar vazio
        If ignorarvazio = True Then
            If r <> "" Then
                juntar = juntar & r & separador
            End If
        'não ignorar vazio
        Else
            juntar = juntar & r & separador
        End If
        
    Next r
    
    'desconsidera o separador no final
    If Len(separador) > 0 Then
        juntar = Left(juntar, Len(juntar) - Len(separador))
    End If
    
End Function

Utilizando a função criada

Sua função está criada e se chama JUNTAR. Para utilizar a função basta chamá-la no Excel como se fosse uma fórmula comum.

Declaração da função

Nossa função é declarada da mesma maneira que a nativa UNIRTEXTO. 

=JUNTAR(delimitador; ignorar_vazio; intervalo)
delimitadorCaractere ou texto que irá separar os valores
ignorar_vazioInforme VERDADEIRO para ignorar espaços vazios ou FALSO para mostrar também os espaços vazios
intervaloRepresenta o intervalo que será

Ao declarar a função, informar o separador e se deseja apresentar os espaços vazios, selecione o intervalo. 

O resultado desta fórmula é

A; B; C

Para saber mais sobre VBA clique aqui.