顯示具有 EXCEL 標籤的文章。 顯示所有文章
顯示具有 EXCEL 標籤的文章。 顯示所有文章

2014年5月13日 星期二

excel 常用巨集

1、查找重複內容公式:=IF(COUNTIF(A:A,A2)>1,"重複","")。

2、用出生年月來計算年齡公式:=TRUNC((DAYS360(H6,"2009/8/30",FALSE))/360,0)。

3、從輸入的18位身份證號的出生年月計算公式:=CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2, 13,2))。

4、從輸入的身份證號碼內讓系統自動提取性別,可以輸入以下公式:

=IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","女"),IF(MOD(MID(C2,17,1), 2)=1,"男","女"))公式內的「C2」代表的是輸入身份證號碼的單元格。

1、求和: =SUM(K2:K56) ——對K2到K56這一區域進行求和;

2、平均數: =AVERAGE(K2:K56) ——對K2 K56這一區域求平均數;

3、排名: =RANK(K2,K$2:K$56) ——對55名學生的成績進行排名;

4、等級: =IF(K2>=85,"優",IF(K2>=74,"良",IF(K2>=60,"及格","不及格")))

2009年6月2日 星期二

破解excel保護密碼

(摘自vba.blogspot.com)
1.到「http://www.straxx.com/excel/password.html 」下載「password.xla」 這個檔案。
2.打開有保護的Excel文件,在功能表上的【工具】按一下滑鼠左鍵,接著從選單中點選【增益集】。
3.按下「增益集」對話盒中的〔瀏覽〕,接著找到剛才下載的位置,點選「password.xla」後按下〔確定〕。
4.接著你會發現選項中多了「Password recover」,勾選之後再按下對話盒中的〔確定〕。
5.接下來會出現一個提示訊息對話盒,沒關係,直接在〔確定〕上按一下滑鼠左鍵繼續下一個步驟。
6.再來破解保護!點選左下角要破解的〔Sheet〕後,按下功能表中的【工具】,接著從選單中點選【Unprotect sheet】,以去除工作表的保護!
7.最後解除保護了,總共花了1分03秒!依照表格及密碼的複雜程度,會秏時不同的破解時間,但還是遠比「暴力破解法」來得快,按下〔確定〕就可以繼續編輯文件囉!

破解Excel 保護工作表 的密碼

破解Excel 保護工作表 的密碼 (摘自vba.blogspot.com)
以下VBA可以查出[保護工作表]的密碼.
此為4位數的[英數密碼], 可自行修改以符合自己的需求.
Sub JackyCP()
Dim DimArr(63)
Dim PW As String
For x = 48 To 57
xx = xx + 1
DimArr(xx) = Chr(x)
Next
For x = 97 To 122
xx = xx + 1
DimArr(xx) = Chr(x)
NextFor x = 65 To 90
xx = xx + 1
DimArr(xx) = Chr(x)Next
On Error Resume Next
For x1 = 1 To UBound(DimArr) - 1
For x2 = 1 To UBound(DimArr) - 1
For x3 = 1 To UBound(DimArr) - 1
For x4 = 1 To UBound(DimArr) - 1
PW = DimArr(x1) & DimArr(x2) & DimArr(x3) & DimArr(x4)
Application.StatusBar = PW
ActiveSheet.Unprotect PW
If ActiveSheet.ProtectContents = False Then
MsgBox "Password is " & PW
Exit Sub
End If
Next
Next
Next
Next
End Sub

移除VBA.xls.xla 密碼 保護

(摘自vba.blogspot.com)
'移除VBA编码保护
Sub MoveProtect()
Dim FileName As String
FileName = Application.GetOpenFilename("Excel文件(*.xls & *.xla),*.xls;*.xla", , "VBA破解")
If FileName = CStr(False) Then
Exit Sub
Else
VBAPassword FileName, False
End If
End Sub
'设置VBA编码保护
Sub SetProtect()
Dim FileName As String
FileName = Application.GetOpenFilename("Excel文件(*.xls & *.xla),*.xls;*.xla", , "VBA破解")
If FileName = CStr(False) Then
Exit Sub
Else
VBAPassword FileName, True
End If
End Sub
Private Function VBAPassword(FileName As String, Optional Protect As Boolean = False)
If Dir(FileName) = "" Then
Exit Function
Else
FileCopy FileName, FileName & ".bak"
End If
Dim GetData As String * 5
Open FileName For Binary As #1
Dim CMGs As Long
Dim DPBo As Long
For i = 1 To LOF(1)
Get #1, i, GetData
If GetData = "CMG=""" Then CMGs = i
If GetData = "[Host" Then DPBo = i - 2: Exit For
Next
If CMGs = 0 Then
MsgBox "请先对VBA编码设置一个保护密码...", 32, "提示"
Exit Function
End If
If Protect = False Then
Dim St As String * 2
Dim s20 As String * 1
'取得一个0D0A十六进制字串
Get #1, CMGs - 2, St
'取得一个20十六制字串
Get #1, DPBo + 16, s20
'替换加密部份机码
For i = CMGs To DPBo Step 2
Put #1, i, St
Next
'加入不配对符号
If (DPBo - CMGs) Mod 2 <> 0 Then
Put #1, DPBo + 1, s20
End If
MsgBox "文件解密成功......", 32, "提示"
Else
Dim MMs As String * 5
MMs = "DPB="""
Put #1, CMGs, MMs
MsgBox "对文件特殊加密成功......", 32, "提示"
End If
Close #1
End Function

2009年5月21日 星期四

excel 自訂函數

  • 在 [工具] 功能表上指向 [巨集],然後按一下 [Visual Basic 編輯器]。
  • 在 [Microsoft Visual Basic] 視窗中的 [插入] 功能表上按一下 [模組]。
  • 在 [Module N] 視窗中輸入函數的程式碼。例如,一個計算 6% 銷售佣金的函數可能是:
    自訂函數的 VBA 程式碼範例
    上述範例的第一行是建立名稱為 Commission 的函數,顯示它的計算在數字或儲存格參照上。這個函數使用「MyNum」變數存放儲存格的數字或數值。第二行是計算 Commission 函數的值,將數字或儲存格參照 (MyNum) 乘於 0.06 (更複雜的函數可能有數行程式碼執行計算)。第三行為函數程式碼的結尾。
  • 在 [檔案] 功能表上按一下 [關閉並回到 Microsoft Excel]。
  • 在工作表上,將函數用於公式中。例如,您可以用 Commission 函數計算銷售的佣金:
    在工作表使用含有自訂函數的公式
    使用這個方法所建立的函數只能在函數所建立的活頁簿中使用。如果要用在其他的活頁簿,可以將函數程式碼複製到所要活頁簿的 VBA 模組中;或者,如果您是程式開發人員,可以將函數複製到用於函數庫的活頁簿中,並將這個活頁簿編譯成增益集程式。

    (摘自MICROSOFT網站)

  • revit 小住宅練習

    revit 小住宅練習 專案零件檔下載