excel中貨幣對換 (15點)

2010-10-05 3:51 am

在excel中能否:
1.
在A1儲存格中打數字,便在A2中出答案
但同時可以在A2儲存格中打數字,便在A2中出答案
E.G 在A1打100,A2便出107
而在A2打107,A1便會出100
其實就是要計貨幣對換
打公式后,在同一格打數字都會取代掉公式,很煩.


2.另外,可否按一下save或其他制,便會把某儲存格的數字在另一excel中儲存起來
下一次按save時,再把另一個數字儲存起來,但不要蓋掉之前的數字?
就是要記錄每一單變更,以便日后計算

回答 (1)

2010-10-05 9:23 pm
✔ 最佳答案
基本上, 可以用vba 寫 macro 解決. 但先完成下面的 settings:
1. 在 sheet1 A1 輸入 "港幣", B1 輸入 "澳門幣"
2. 在 sheet2 A2 輸入 100, B2 輸入 107 (對換率 可以更改)
3. 將 A3 的底色變 為黃色, B3 的底色變 為藍色. (在 A3 或 B3 輸入 要找換 的錢的數目)

在 SHEET1 寫入下面的 MACRO:

Dim r2Sub Worksheet_Change(ByVal Target As Range)r2 = Sheets(2).Cells(1, 1).CurrentRegion.Rows.Count + 1
r = Target.Row: c = Target.ColumnIf r <> 3 Then Endf1 = Cells(2, 2) / Cells(2, 1)
f2 = Cells(2, 1) / Cells(2, 2)If Cells(3, 1) > 0 And c = 1 Then
Cells(3, 2) = f1 * Cells(3, 1)
sav1
End
End If
If Cells(3, 2) > 0 And c = 2 Then
Cells(3, 1) = f2 * Cells(3, 2)
sav2
End
End IfEnd SubSub sav1()
Sheets(2).Cells(r2, 1) = Sheets(1).Cells(2, 1)
Sheets(2).Cells(r2, 2) = Sheets(1).Cells(2, 2)Sheets(2).Cells(r2, 3) = Sheets(1).Cells(3, 1)
Sheets(2).Cells(r2, 3).Interior.ColorIndex = 6
Sheets(2).Cells(r2, 4) = Sheets(1).Cells(3, 2)
End SubSub sav2()
Sheets(2).Cells(r2, 1) = Sheets(1).Cells(2, 1)
Sheets(2).Cells(r2, 2) = Sheets(1).Cells(2, 2)Sheets(2).Cells(r2, 4) = Sheets(1).Cells(3, 2)
Sheets(2).Cells(r2, 4).Interior.ColorIndex = 8
Sheets(2).Cells(r2, 3) = Sheets(1).Cells(3, 1)
End Sub

只要你在 sheet1 A3 輸入 要找換的數目, 再按 ENTER, B3 就會出現對換後的數值了. 反之, 只要你在 sheet1 B3 輸入 要找換的數目, 再按 ENTER, A3 就會出現對換後的數值了.

注意:
你輸入的每個 TRANSACTION, 都會自動寫入 sheet2. sheet2 的 column A 和 B 分別貯存 對換率, column C 及 D 分別貯存 TRANSACTION, 其中有底色的為用該 貨幣來找換另一貨幣.

你可電郵到
[email protected]
索取 sample file.



收錄日期: 2021-04-13 17:34:35
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20101004000051KK01015

檢視 Wayback Machine 備份