首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Excel暂停/时间等待宏

Excel暂停/时间等待宏
EN

Stack Overflow用户
提问于 2014-06-26 10:58:02
回答 1查看 186关注 0票数 1

我在我的excel电子表格上有以下功能,使它在两个未来合同之间出现一定的价差时说“交易”:

代码语言:javascript
复制
Function SayIt(c As Boolean, s As String)
If c Then Application.Speech.Speak s
SayIt = c
End Function

在我的单子上:

代码语言:javascript
复制
=SayIt(D15<=G6;REPT("trade ";1))

这很有效,它会说“交易”,但每次价格在套利区间内波动,它都会重复“贸易,贸易……”。

现在我需要的是一个函数,它要么让它停止说“交易”,而价格允许息差套利,要么它只会在20秒或1分钟后重复,如果它仍然在设定价差内。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-26 11:21:33

很好的问题!........the代码需要“记住”之前的调用被赋予了True,以避免重述。我们可以使用全局布尔值来实现这一点:

在标准模块中:

代码语言:javascript
复制
Public Was_c_TrueBefore As Boolean

Function SayIt(c As Boolean, s As String)
    If c And Not Was_c_TrueBefore Then
        Application.Speech.Speak s
        Was_c_TrueBefore = True
    End If
    If Not c Then
        Was_c_TrueBefore = False
    End If
    SayIt = c
End Function

因为只有一个全局函数,所以这只适用于一个函数调用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24428679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档