{"id":1,"date":"2020-04-19T10:23:37","date_gmt":"2020-04-19T13:23:37","guid":{"rendered":"http:\/\/dscreative.com.br\/blog\/?p=1"},"modified":"2020-10-12T21:07:39","modified_gmt":"2020-10-13T00:07:39","slug":"ola-mundo","status":"publish","type":"post","link":"https:\/\/dscreative.com.br\/blog\/ola-mundo\/","title":{"rendered":"Remover senha de macro no Excel"},"content":{"rendered":"<div style='text-align:center' class='yasr-auto-insert-visitor'><\/div>\n<p>Precisando remover a senha que est\u00e1 travando o acesso a leitura\/edi\u00e7\u00e3o das macros em sua planilha, siga os passos abaixo e desbloqueie de maneira simples.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>Testado nas vers\u00f5es de 2007 acima, caso tenha a senha de macro no arquivo .xls, d\u00ea um salvar como e salve com a extens\u00e3o .xlsm.<\/p>\n\n\n\n<p><strong>Passos<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Abra o (s) arquivo (s) que cont\u00eam seus projetos VBA bloqueados.<\/li><li>Crie um novo arquivo com o mesmo tipo que o anterior e armazene este c\u00f3digo no&nbsp;<strong>M\u00f3dulo1<\/strong>.<\/li><\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-\">Option Explicit\n\nPrivate Const PAGE_EXECUTE_READWRITE = &amp;H40\n\nPrivate Declare PtrSafe Sub MoveMemory Lib &quot;kernel32&quot; Alias &quot;RtlMoveMemory&quot; _\n(Destination As LongPtr, Source As LongPtr, ByVal Length As LongPtr)\n\nPrivate Declare PtrSafe Function VirtualProtect Lib &quot;kernel32&quot; (lpAddress As LongPtr, _\nByVal dwSize As LongPtr, ByVal flNewProtect As LongPtr, lpflOldProtect As LongPtr) As LongPtr\n\nPrivate Declare PtrSafe Function GetModuleHandleA Lib &quot;kernel32&quot; (ByVal lpModuleName As String) As LongPtr\n\nPrivate Declare PtrSafe Function GetProcAddress Lib &quot;kernel32&quot; (ByVal hModule As LongPtr, _\nByVal lpProcName As String) As LongPtr\n\nPrivate Declare PtrSafe Function DialogBoxParam Lib &quot;user32&quot; Alias &quot;DialogBoxParamA&quot; (ByVal hInstance As LongPtr, _\nByVal pTemplateName As LongPtr, ByVal hWndParent As LongPtr, _\nByVal lpDialogFunc As LongPtr, ByVal dwInitParam As LongPtr) As Integer\n\nDim HookBytes(0 To 11) As Byte\nDim OriginBytes(0 To 11) As Byte\nDim pFunc As LongPtr\nDim Flag As Boolean\n\nPrivate Function GetPtr(ByVal Value As LongPtr) As LongPtr\n    GetPtr = Value\nEnd Function\n\nPublic Sub RecoverBytes()\n    If Flag Then MoveMemory ByVal pFunc, ByVal VarPtr(OriginBytes(0)), 12\nEnd Sub\n\nPublic Function Hook() As Boolean\n    Dim TmpBytes(0 To 11) As Byte\n    Dim p As LongPtr, osi As Byte\n    Dim OriginProtect As LongPtr\n\n    Hook = False\n\n    #If Win64 Then\n        osi = 1\n    #Else\n        osi = 0\n    #End If\n\n    pFunc = GetProcAddress(GetModuleHandleA(&quot;user32.dll&quot;), &quot;DialogBoxParamA&quot;)\n\n    If VirtualProtect(ByVal pFunc, 12, PAGE_EXECUTE_READWRITE, OriginProtect) &lt;&gt; 0 Then\n\n        MoveMemory ByVal VarPtr(TmpBytes(0)), ByVal pFunc, osi+1\n        If TmpBytes(osi) &lt;&gt; &amp;HB8 Then\n\n            MoveMemory ByVal VarPtr(OriginBytes(0)), ByVal pFunc, 12\n\n            p = GetPtr(AddressOf MyDialogBoxParam)\n\n            If osi Then HookBytes(0) = &amp;H48\n            HookBytes(osi) = &amp;HB8\n            osi = osi + 1\n            MoveMemory ByVal VarPtr(HookBytes(osi)), ByVal VarPtr(p), 4 * osi\n            HookBytes(osi + 4 * osi) = &amp;HFF\n            HookBytes(osi + 4 * osi + 1) = &amp;HE0\n\n            MoveMemory ByVal pFunc, ByVal VarPtr(HookBytes(0)), 12\n            Flag = True\n            Hook = True\n        End If\n    End If\nEnd Function\n\nPrivate Function MyDialogBoxParam(ByVal hInstance As LongPtr, _\nByVal pTemplateName As LongPtr, ByVal hWndParent As LongPtr, _\nByVal lpDialogFunc As LongPtr, ByVal dwInitParam As LongPtr) As Integer\n\n    If pTemplateName = 4070 Then\n        MyDialogBoxParam = 1\n    Else\n        RecoverBytes\n        MyDialogBoxParam = DialogBoxParam(hInstance, pTemplateName, _\n                   hWndParent, lpDialogFunc, dwInitParam)\n        Hook\n    End If\nEnd Function<\/code><\/pre>\n\n\n\n<ol start=\"3\"><li>Cole este c\u00f3digo no&nbsp;<strong>M\u00f3dulo 2<\/strong>&nbsp;e execute-o.<\/li><\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-\">Sub unprotected()\n    If Hook Then\n        MsgBox &quot;VBA Project is unprotected!&quot;, vbInformation, &quot;*****&quot;\n    End If\nEnd Sub<\/code><\/pre>\n\n\n\n<ol start=\"4\"><li>Pronto, planilhas com o c\u00f3digo VBA desbloqueado pronto para usar.<\/li><\/ol>\n\n\n\n<p><strong>Fonte:<\/strong> https:\/\/stackoverflow.com\/questions\/1026483\/is-there-a-way-to-crack-the-password-on-an-excel-vba-project\/31005696#31005696<\/p>\n\n\n<div class=\"page_counter_label\"><span class=\"page_counter_text\" style=\"color:#000000;background:#FFFFFF;\">Total Page Visits: 2428<\/span><\/div>\n\n\n\n<p>Para abrir a<strong> Guia Desenvolvedor<\/strong> siga os passos desse <a href=\"https:\/\/dscreative.com.br\/blog\/?p=58\" data-type=\"URL\" data-id=\"https:\/\/dscreative.com.br\/blog\/?p=58\">link<\/a>.<\/p>\n ","protected":false},"excerpt":{"rendered":"<p>Precisando remover a senha que est\u00e1 travando o acesso a leitura\/edi\u00e7\u00e3o das macros em sua planilha, siga os passos abaixo e desbloqueie de maneira simples.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"yasr_overall_rating":0,"yasr_post_is_review":"","yasr_auto_insert_disabled":"","yasr_review_type":"","footnotes":""},"categories":[2,3],"tags":[],"class_list":["post-1","post","type-post","status-publish","format-standard","hentry","category-excel","category-seguranca"],"yasr_visitor_votes":{"stars_attributes":{"read_only":false,"span_bottom":false},"number_of_votes":2,"sum_votes":10},"_links":{"self":[{"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/posts\/1","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/comments?post=1"}],"version-history":[{"count":6,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/posts\/1\/revisions"}],"predecessor-version":[{"id":65,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/posts\/1\/revisions\/65"}],"wp:attachment":[{"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/media?parent=1"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/categories?post=1"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dscreative.com.br\/blog\/wp-json\/wp\/v2\/tags?post=1"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}