標題:
[發問]
sheet切換儲存格資料修改
[打印本頁]
作者:
ayubbs
時間:
2014-12-20 01:04
標題:
sheet切換儲存格資料修改
各位大大好,使用vba下如進行sheet切換動作進行儲存格的公式套入
不需切至該sheet下即可完成,但某些動作如參照填滿動作就一定要
切換至該shhet下才可正常動作不然就會出現參照位置異常,像以下的
內容該如何實現不需切至該sheet下即可完成
Sheets("aa").Range("B2").Value = "=IF(R[-1]C[-1]<>RC[-1],1,R[-1]C+1)"
Sheets("aa").Select
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B" & [C2].End(xlDown).Row)
另以下把有填滿公式格式變成文字格式確不知道範圍內有多少資料格子用以下方式卻無效果
Sheets("工作表3").Range("F1" & [F1].End(xlDown).Row).Value = Sheets("工作表3").Range("F1" & [F1].End(xlDown).Row)
用以下方式才可實現是否有語法上那裡異常
Sheets("aa").Range("A1:A500").Value = Sheets("aa").Range("A1:A100").Value
另如要用 a.xls 資料 寫入網路位置 \\b\c.xls 中以不開啟檔案方式可直接寫 入
aa.xls.Sheets("aa").Range("A1:F1").Value = xxx 這種方式嗎?
路徑該如何加上
謝謝大家
作者:
luhpro
時間:
2014-12-22 00:11
本帖最後由 luhpro 於 2014-12-22 00:21 編輯
各位大大好,使用vba下如進行sheet切換動作進行儲存格的公式套入
不需切至該sheet下即可完成,但某些動作如 ...
ayubbs 發表於 2014-12-20 01:04
1. 設定公式應該要用 .Formula , 底下這幾種都可以實現:
With Sheets("aa")
.[B2].Formula = "=IF(R[-1]C[-1]<>RC[-1],1,R[-1]C+1)"
.[B2].AutoFill Destination:=.Range("B2:B" & .[C2].End(xlDown).Row)
End With
複製代碼
With Sheets("aa")
.[B2].Formula = "=IF(R[-1]C[-1]<>RC[-1],1,R[-1]C+1)"
.[B2].AutoFill Destination:=.Range(.[B2], .Cells(.[C2].End(xlDown).Row, 2))
End With
複製代碼
With Sheets("aa").[B2]
.Formula = "=IF(R[-1]C[-1]<>RC[-1],1,R[-1]C+1)"
.AutoFill Destination:=Range(.Offset(0), .Parent.Cells(.Offset(, 1).End(xlDown).Row, 2))
End With
複製代碼
2. 你的公式發生錯誤的原因 : Range("F1" & [F1].End(xlDown).Row) 內,
引號中的字串要用 "F1:F2" 的格式,
你沒有 : 且後面 [F1].End(xlDown).Row 結果只是一個數字而非儲存格位址文字.
不過若直接修改你的程式成:
Sheets("工作表3").Range("F1:F" & [F1].End(xlDown).Row).Value = Sheets("工作表3").Range("F1:F" & [F1].End(xlDown).Row)
複製代碼
執行後該欄資料卻會全部消失這我也不知道是為甚麼.
現修改如下 :
With Sheets("工作表3").[F1]
.Range(.Offset(0), .Offset(.End(xlDown).Row)).Value = .Range(.Offset(0), .Offset(.End(xlDown).Row))
End With
複製代碼
但看你 #1 的敘述似乎是要改儲存格格式為文字,
那麼應該是要改成底下這樣才對喔:
Sheets("工作表3").Range("F1:F" & [F1].End(xlDown).Row).NumberFormat = "@"
複製代碼
3. 我建議試試如下方式, 不過我沒驗證過 :
Workbooks("\\b\c.xls").Sheets("aa").Range("A1:F1").Value = xxx
複製代碼
作者:
ayubbs
時間:
2014-12-23 09:47
回復
2#
luhpro
謝謝大大指導,我再試試各種方式下的表示形式,很奇怪的我常常使用.VALUE 方式去表示公式也都蠻正常的
就算沒用.Formula 好像也都沒影響,要還有不懂的再請教了
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)