① excel vba代码加密
你关闭整个工作表后再重新打开试试
② 如何加密VBA
在VBE界面中
工具—VBAproject属性—保护
然后设好密码即可。
③ 用excel vba 怎样实现对本文件的加密与保护
你这个变量用某个单元格的值好了,或者设定某个单元格根据这个变量更新,你写公式的时候引用这个单元格,然后把这个单元格隐藏,保护起来,应该可以了
应该不行吧,变量只在它定义的范围里有效
你导出没有?导出后是.bas,.frm等,然后上硬盘上Search这些文件,要是没有,就没办法了。
还有就是找盘上所有的.xls,然后看看有没有意外收获。
你xls时候就没有的东西,.txt时也别指望。如果有问题的话,Excel自行都修复不了的话……
你用UltraEdit试试吧。如果不是明码就没办法了,你这又不是加密,是种错误,应该没有针对这样具体错误设计的恢复器。
也许能,你丢的是你写的还是加载宏?安装只覆盖加载宏,你写的东西当然没什么可以说的。你试试吧。
④ 怎么给VBA加密呢
VBA是什么?
如果是普通的文件或者文件夹,你可以试试文件夹加密超级大师。
加密方法就和加密普通文件夹一样,先下载,然后在需要加密的文件上点击鼠标右键,输入密码,然后点击确定就OK了。
⑤ 怎么给excel vba编辑器加密
不用代码
VBA中---工具---VBAproject属性----保护---查看时锁定工程(选中)---设好密码---保存退出---再进就会如你所愿了
⑥ 怎么用vba给excel 加密
操作步骤:
1、打开Excel2007启用宏的Excel文件。
注意事项:
ALT+F11键必须同时按下。
选择对象必须明确是模块设置密码还是SHEET表文件整个设置密码,看代码输入是在哪个对象内。
⑦ EXCE如何用VBA代码加入启动时对所有工作表加密,并设指定密码
通过代码对excel代码进行加密即可:
1、打开您需要破解保护密码的Excel文件;
2、依次点击菜单栏上的工具---宏----录制新宏,输入宏名字如:aa;
3、停止录制(这样得到一个空宏);
4、依次点击菜单栏上的工具---宏----宏,选aa,点编辑按钮;
5、删除窗口中的所有字符(只有几个),替换为下面的内容;
Sub添加密码()
DimxAsInteger
Forx=1ToSheets.Count
Sheets(x).Protect"123"
Nextx
hisWorkbook.Protect"123"
⑧ VBA代码部分如何加密解密
在VBA编辑器的"工具”菜单里点“VBAProject属性",在“保护”页中把“查看时缩定工程”的勾选上,然后输入密码后确定即可。这样下次打开查看代码时就需要输入密码了。
但这种加密方式的破解,早就有专用工具了,可以在网络上查找试试。
比较好的方法是,把做好含有VBA代码的Excel编译成exe文件,这种工具也可以在网上找到,自己找一下吧。
⑨ Excel vba 宏写的xla文件被加密,如何简单快速破解
试试蹭网能不能破解!~蹭网卡有分2种,一代和2代,一代只能破解wep,目前99%是wpa加密,所以根本没用了,目前加密方式有wep和wpa两种,目前绝大部分都是wpa加密 ,如果要求高的话那就要多多慎重考虑了。你可以网络搜索阿法洛比特看看,它是一个超强cmcc接收器,城市大部分地区可以用 ,我用过这个觉得还不错。
⑩ 如何用rc4 加密算法对excel vba进行加密
我就是专门做破解工作的,没有说普通的加密很容易破解,你有密码里加入大小写,特殊符号以及空格,或者在加上几个其它国家的语言文子(比如日文)10位以上,这样就很难破解了,
如果这样不行的话,你用最新版本的RAR(压缩包加密)位数多一点,再加上大小写,特殊符号以及空格或者在加上几个其它国家的语言文字(比如日文)10位以上,目前基本无法破解,破解软件对这种远算只能达到一秒几次。
namespace CryptoRC4
{
using System;
using System.Text;
public class clsRC4Engine
{
private static long m_nBoxLen = 255;
protected clsRC4Engine()
{
}
private static void GetKeyBytes( string Key, out byte[] m_nBox )
{
long index2 = 0;
m_nBox = new byte[m_nBoxLen];
Encoding ascii = Encoding.ASCII;
Encoding unicode = Encoding.Unicode;
byte[] asciiBytes = Encoding.Convert(unicode,ascii, unicode.GetBytes( Key ));
char[] asciiChars = new char[ascii.GetCharCount(asciiBytes,0,asciiBytes.Length)];
ascii.GetChars(asciiBytes,0,asciiBytes.Length,asciiChars,0);
long KeyLen = Key.Length;
for ( long count = 0; count < m_nBoxLen ; count ++ )
{
m_nBox[count] = (byte)count;
}
for ( long count = 0; count < m_nBoxLen ; count ++ )
{
index2 = (index2 + m_nBox[count] + asciiChars[ count % KeyLen ]) % m_nBoxLen;
byte temp = m_nBox[count];
m_nBox[count] = m_nBox[index2];
m_nBox[index2] = temp;
}
}
private static bool GetEncryptBytes( string sData, byte[] m_nBox,out byte[] EncryptedBytes )
{
EncryptedBytes = null;
bool toRet = true;
try
{
long i=0;
long j=0;
Encoding enc_default = Encoding.Unicode;
byte[] input = enc_default.GetBytes( sData );
EncryptedBytes = new byte[input.Length];
byte[] n_LocBox = new byte[m_nBoxLen];
m_nBox.CopyTo(n_LocBox,0);
long ChipherLen = input.Length + 1;
for ( long offset = 0; offset < input.Length ; offset++ )
{
i = ( i + 1 ) % m_nBoxLen;
j = ( j + n_LocBox[i] ) % m_nBoxLen;
byte temp = n_LocBox[i];
n_LocBox[i] = n_LocBox[j];
n_LocBox[j] = temp;
byte a = input[offset];
byte b = n_LocBox[(n_LocBox[i]+n_LocBox[j])% m_nBoxLen];
EncryptedBytes[offset] = (byte)((int)a^(int)b);
}
}
catch
{
EncryptedBytes = null;
toRet = false;
}
return toRet;
}
public static bool Encrypt( string sData, string Key, out string EncryptedString )
{
EncryptedString = null;
if( sData == null || Key == null ) return false;
byte[] m_nBox;
GetKeyBytes( Key, out m_nBox );
byte[] output;
if( GetEncryptBytes( sData, m_nBox, out output ) )
{
// Convert data to hex-data
EncryptedString = "";
for( int i = 0; i < output.Length; i++ )
EncryptedString += output[i].ToString( "X2" );
return true;
}
else
return false;
}
/// <summary>
/// Decrypt data using specific key
/// </summary>
/// <param name="EncryptedString"></param>
/// <param name="Key"></param>
/// <param name="sData"></param>
/// <returns></returns>
public static bool Decrypt( string EncryptedString, string Key, out string sData )
{
sData = null;
if( EncryptedString == null || Key == null ) return false;
else if( EncryptedString.Length % 2 != 0 ) return false;
byte[] m_nBox;
GetKeyBytes( Key, out m_nBox );
// Convert data from hex-data to string
byte[] bData = new byte[EncryptedString.Length / 2];
for( int i = 0; i < bData.Length; i++ )
bData[i] = Convert.ToByte( EncryptedString.Substring( i * 2, 2 ), 16 );
EncryptedString = Encoding.Unicode.GetString( bData );
byte[] output;
if( GetEncryptBytes( EncryptedString, m_nBox, out output ) )
{
sData = Encoding.Unicode.GetString( output );
return true;
}
else
return false;
}
}
}
调用:
//Encrypt data
string strEncryptedString;
if( clsRC4Engine.Encrypt( strValue, strKey, out strEncryptedString ) )
MessageBox.Show( strEncryptedString );
//Decrypt data
string strDecryptedString;
if( clsRC4Engine.Decrypt( strValue, strKey, out strDecryptedString ) )
MessageBox.Show( strDecryptedString );
另外一种
public static string encrypt_str( string str )
{
string s = "";
int i_Encrypt = ClsSetConst.m_Set_Encrypt;
char[] s_array = str.ToCharArray();
for(int i = 0; i < s_array.Length; i++)
{
int x = ((int)s_array[i]) + i_Encrypt;
s += (char)(x);
}
return s;
}
public void decript_str(string str)
{
string s = "";
int i_Encrypt = ClsSetConst.m_Set_Encrypt;
char[] s_array = str.ToCharArray();
for(int i = 0; i < s_array.Length; i++)
{
int x = ((int)s_array[i]) - i_Encrypt;
s += (char)x;
}
自己看看有没有输错的地方吧