2015-02-12 59 views
-4

我已經在模塊1中編寫了代碼。我得到了正確的輸出值。但是,當我在模塊2中調用它時,輸出值爲零。我會很感激,如果有人能幫助我。visual basic for application Excel

模塊1:

Sub MuAndVuCalculations() 
BeamFlangeWidth = Sheets("MuVu").Range("D7") 
BeamFlangeThickness = Sheets("MuVu").Range("D8") 
BeamWebHeight = Sheets("MuVu").Range("D9") 
M3 = (0.5 * BeamFlangeWidth * BeamWebHeight * BeamWebHeight^2) 
End Sub 

模塊2:

Sub Main() 
Call MuAndVuCalculations 
M = 5 Debug.Print M3 + M 
End Sub 

在模塊2也看不出M3在立即窗口和M3 + 5的輸出是5

+1

請顯示您的代碼?目前很難從你提供的信息中發現問題 – 2015-02-12 07:11:19

+0

代碼有點太長。我可以有你的電子郵件地址嗎?我附上該檔案並將其發送給你。 – mohammad 2015-02-12 07:25:27

+0

交只有初步認識的代碼 – 2015-02-12 07:33:14

回答

1

您必須聲明M3public才能從其他函數訪問。 在模塊1中添加代碼上方的第一行:

Public M3 As Long 'add this line 

Sub MuAndVuCalculations() 
BeamFlangeWidth = Sheets("Tabelle1").Range("D7") 
BeamFlangeThickness = Sheets("Tabelle1").Range("D8") 
BeamWebHeight = Sheets("Tabelle1").Range("D9") 
M3 = (0.5 * BeamFlangeWidth * BeamWebHeight * BeamWebHeight^2) 
End Sub 
+0

非常感謝Mr.Alex.P – mohammad 2015-02-14 08:59:24