2016-12-05 34 views
-2

对不起,这是非常基本的,我不擅长VBA。 所有我想要的是有一个按钮,单击时存储一个整数,然后减去另一个值的值。例如,如果value1为= 100,则单击该框并输入一个数字,然后从100中减去该数字。因此,假设您输入30,该数字应该为70,如果再次执行,则应该降低至40。一旦100用完,显示一个msgbox。这只是我正在努力的一个项目的一部分。更新值并从中减去

+0

“存储一个整数” - 存储它*哪里*正好?一个VBA公共变量?电子表格上的单元格?工作簿名称? “价值1”应该来自哪里?你有尝试过什么吗?如果是这样,你应该显示你的代码,并描述你有什么问题。 –

+0

是一个公共变量。我试过将它存储在一个单元格中并将其存储在一个变量中。我没有分享任何代码,因为它根本行不通。每次我点击按钮,一切都会重置。也许一个循环是必要的? – Ricky

+1

发布你的代码,即使它不起作用是一个很好的实践,表明你已经尝试过 – ballsy26

回答

1

这可能会给你一些想法。在标准代码模块中输入:

Public balance As Long 

Sub Deposit() 
    'adds to the current amount 
    balance = balance + InputBox("Please enter a value") 
End Sub 

Sub Withdraw() 
    Dim v As Long 

    v = InputBox("Enter a value, maximum of " & balance) 

    If balance < v Then 

     MsgBox "Sorry, that value is too big" 
    Else 
     balance = balance - v 
    End If 

    If balance = 0 Then MsgBox "Amount is exhausted" 
End Sub 

将这两个子附加到按钮,看看它们是如何工作的。

一句关于公共变量的警告 - 如果某件事情导致您的项目重置,那么您将丢失数据。在单元中存储值不会有同样的问题(但是您必须决定将它们放在哪里而不会混淆工作表)。