我是Excel VBA新手,我只是想了解下面的代码。
我主要是在努力理解评估功能,即使我已经在线阅读了它。
如果可能的话,如果有人能用简单的英语翻译代码,我将不胜感激,但当然欢迎任何帮助! :)
const store = new Vuex.Store({
state: {
count: 0
},
mutations: {
increment(state) { this.inc(state) },
decrement(state) { this.dec(state) }
}
})
// Shared functions: inc() and dec()
store.inc = state => state.count++
store.dec = state => state.count--
new Vue({
el: '#app',
computed: {
count() {
return store.state.count
}
},
methods: {
increment () {
store.commit('increment')
},
decrement () {
store.commit('decrement')
}
}
})
答案 0 :(得分:3)
要了解Application.Evaluate
的作用,您需要了解Application
指的是Excel
本身,因此Evaluate
基本上归结为一种利用Excel表达式的方式评估引擎。
Debug.Print Application.Evaluate("SUM(2, 2)") ' prints 4
有一个简写符号:
Debug.Print [SUM(2, 2)] ' also prints 4
虽然它很慢,但如果可以,请避免使用它。 Excel有一个丰富的对象模型,其中包含Application.WorksheetFunction
之类的内容,它允许您以编程方式调用MAX
和VLOOKUP
等工作表函数以及您可能想要评估的几乎所有内容
Evaluate
不只是计算工作表函数 - 它会解析您在Excel的公式栏中输入的表达式。例如:
Debug.Print Application.Evaluate("=A1")
Debug.Print [A1]
两者都打印单元格A1的内容。有趣的是,它返回了您可以在VBA代码中使用的类型,而不仅仅是值:
Debug.Print TypeName([A1]) ' prints "Range"
请注意,as Tim Williams correctly noted,Application.Evaluate
始终可以处理当前处于活动状态的工作表(并且对ActiveSheet
的隐式引用是一个非常常见的错误来源!);如果您需要Evaluate
某些内容,最好使用Worksheet
个对象,例如Sheet1.Evaluate
- 无论哪张表处于活动状态,都会返回预期结果。
至于你的代码做了什么,这有点超出了这个网站的范围。