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.
Meni
.: Vitrine
Carregando artigos...
Views
Mostrando postagens com marcador cut. Mostrar todas as postagens
Mostrando postagens com marcador cut. Mostrar todas as postagens
VBA Excel - Proteja-se para que ninguém copie e cole conteúdo nas suas planilhas - To prevent people cutting/copying and pasting when your workbook is open
| Blog Office VBA | Blog Excel | Blog Access |
Geralmente, se não todas as vezes, desejamos que os nossos Relatórios, Dashboards e Aplicações não sejam copiadas, ou tenham os seus conteúdos e layouts alterados por alguém que inadvertidamente cole dados na nossa planilha.
Geralmente, se não todas as vezes, desejamos que os nossos Relatórios, Dashboards e Aplicações não sejam copiadas, ou tenham os seus conteúdos e layouts alterados por alguém que inadvertidamente cole dados na nossa planilha.
Há como protegê-las dessas intempéries? Sim! Divirta-se com os códigos abaixo:
Sub DisableCutAndPaste()EnableControl 21, False ' cutEnableControl 19, False ' copyEnableControl 22, False ' pasteEnableControl 755, False ' pastespecialApplication.OnKey "^c", ""Application.OnKey "^v", ""Application.OnKey "+{DEL}", ""Application.OnKey "+{INSERT}", ""Application.CellDragAndDrop = FalseEnd SubSub EnableCutAndPaste()EnableControl 21, True ' cutEnableControl 19, True ' copyEnableControl 22, True ' pasteEnableControl 755, True ' pastespecialApplication.OnKey "^c"Application.OnKey "^v"Application.OnKey "+{DEL}"Application.OnKey "+{INSERT}"Application.CellDragAndDrop = TrueEnd SubSub EnableControl (Id As Integer, Enabled As Boolean)Dim CB As CommandBarDim C As CommandBarControlFor Each CB In Application.CommandBarsSet C = CB.FindControl(Id:=Id, recursive:=True)If Not C Is Nothing Then C.Enabled = EnabledNextEnd Sub
Reference:
Bill ManvilleTags: VBA, Excel, cutting, copying, pasting, cut, copy, past
MS Excel - Deletando linhas - 07 – Linhas duplicadas - Delete duplicate rows
Termo de Responsabilidade
Olá novamente... Vez por outra colamos bases de dados no MS Excel para análise e sem que nos apercebamos dados duplicados acabam ficando juntos em nosso range.
Como efetuar uma depuração que retire as ocorrências duplicadas deixando somente uma versão de cada registro?
Pois bem, a solução abaixo é o resultado de tal necessidade. Implementem, deixem o crédito para quem desenvolveu e tudo estará bem.
Public Sub DelDupliRows (rng As Range)
' Author: Date: Contact:' André Bernardes 29/01/2009 12:18 bernardess@gmail.com' Esta SUB deletará registros (linhas) duplicadas, será baseada no Range passado' como parâmetro. Quando esta SUB achar mais duma ocorrência no mesmo Range,' todas as ocorrências seguintes serão deletadas.Dim r As LongDim n As LongDim v As Variant
On Error GoTo EndMacro
Let Application.ScreenUpdating = FalseLet Application.Calculation = xlCalculationManualLet Application.StatusBar = "Linha sendo processada: " & _
Format(rng.Row, "#,##0")
Let n = 0
For r = rng.Rows.Count To 2 Step -1
If r Mod 500 = 0 Then
Let Application.StatusBar = "Processing Row: " & Format(r, "#,##0")
End If
Let v = rng.Cells(r, 1).Value
If v = vbNullString Then
If Application.WorksheetFunction.CountIf(rng.Columns(1), vbNullString) > 1 Thenrng.Rows(r).EntireRow.DeleteLet n = n + 1End IfElseIf Application.WorksheetFunction.CountIf(rng.Columns(1), v) > 1 Thenrng.Rows(r).EntireRow.DeleteLet n = n + 1
End If
End If
Next rEndMacro:
Let Application.StatusBar = FalseLet Application.ScreenUpdating = TrueLet Application.Calculation = xlCalculationAutomatic
MsgBox CStr(n) & "Linha(s) Duplicada(s) Deleta(s) "
End Sub
André Luiz Bernardes
A&A® - In Any Place.

Assinar:
Postagens (Atom)


