作者Dminor (低小調)
看板Office
標題[算表] vba將公式中的sheet!改成變數
時間Thu Apr 25 18:09:11 2019
軟體:excel
版本:2007
大家好,我是VBA菜鳥,問題如下:
假設我現在有4個工作表,名稱分別為sheet1, sheet2, sheet3, sheet4。
我想在sheet4的B1、B2、B3中分別存入sheet1~3的A1到A10的加總,
也就是
sheet4的B1 = SUM(sheet1!A1:A10)
sheet4的B2 = SUM(sheet2!A1:A10)
sheet4的B3 = SUM(sheet3!A1:A10)
那如果我想用VBA達成此功能的話該如何寫呢?
我是打算這樣寫:
Dim i As Integer
For i = 1 to 3
Worksheets(4).Cells(i,"B") =
?????
等號後面的部分就不知道怎麼把SUM的公式結合變數i放進去了,
請大師們教教我,感激不盡!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.56.186.7
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1556186953.A.9CB.html
1F:→ soyoso: worksheets(4).cells(i,"b")= "=sum(sheet" & i & 04/25 18:13
2F:→ soyoso: "!a1:a10)" 04/25 18:13
出現 語法錯誤 的報錯欸
4F:→ soyoso: 有語法錯誤要提供,不然回文者怎麼知道是什麼錯誤 04/25 18:55
成功了! 我發現是i兩邊加了空白就成功了
感謝s大,請教一下為什麼這邊i的兩邊需要加空格阿?
5F:→ soyoso: 先說變數i前面不加是不會有問題的,只是vbe編譯上會自動調 04/25 19:10
6F:→ soyoso: 整,而i後面不加直接是以i&的話,這在vba內是有其用法的 04/25 19:11
7F:→ soyoso: 用於宣告dim i& 表示宣告資料型態是long 04/25 19:11
8F:→ soyoso: 因此這樣的寫法用於字串連接&上就會產生編譯錯誤:語法錯誤 04/25 19:13
再請教一個問題,
為什麼& i &兩邊要加雙引號阿?雙引號的使用時機是什麼?
我以為是字串才要用引號夾起來@@
※ 編輯: Dminor (117.56.186.7), 04/25/2019 19:16:21
9F:→ soyoso: 為什麼& i &兩邊加的雙引號,先說 "& i &" 這裡兩邊的雙引 04/25 19:18
10F:→ soyoso: 號是對應最前面和最後面的雙引號,寫法為"字串" & i & "字 04/25 19:20
11F:→ soyoso: 串",字串前後需用雙引號表示一組 04/25 19:21
12F:→ soyoso: 因此原po回文也是正確的,字串才要用雙引號夾起來 04/25 19:23
13F:→ Dminor: 我瞭解你的意思了,太感謝你了!! 04/25 19:25