2013-11-01 68 views
1

目前我正在努力獲得對於我的VBA工作在Excel 2010中對於VBA每種方法不工作

每種方法我已經使用前methoed並沒有問題,但對我的生活,我不能似乎獲得了我寫作的新功能。

這就是:

Sub A2_Color_Bob() 

Dim sh As Worksheet 

For Each sh In Sheets 
Range("A2").Value = "Bob" 
Next sh 

End Sub 
+4

不是VBA專家,但是您是否需要實際使用sh,即sh.Range(「A2」)。Value =「Bob」 – Andrew

回答

0

我覺得你的問題是,你的範圍是全球性的,但你要設置一個特定的單元格的值。

做了一些檢查,這個工程。

子A2_Color_Bob()

昏暗SH作爲工作表

對於每個SH在表 sh.Cells(1,1)。價值= 「鮑勃」 接着SH

結束子

+0

不確定「Range is global」是什麼意思...正確的解釋是在@ sam092的[答案](http://stackoverflow.com/a/19722086/119775)。 –

3

它不工作的原因是,您沒有指定該行中的哪張紙張

Range("A2").Value = "Bob"

因此,默認的表將被使用,即在ActiveSheet

因此,如其他人也提到,應當在片材變爲

sh.Range("A2").Value = "Bob"

0

變化爲每個SH, ...在工作表中

或也可以做 dim我只要

for i=1 to worksheets.count 
    sheets(i).range("A2")=bob" 
next i