我正在编写一个VBA代码来替换位于特定目录中的多个Excel文件(工作簿)中的特定字符串。我试着搜索堆栈溢出,我找到答案,但这与通过Excel中的宏替换文本文件中的字符串有关。相同的链接是查找并替换文件中的字符串。
我的所有工作簿有三个工作表,每个工作表在单元格A2中有彭博公式:
=BDH("CBK IN Equity","BID","07-04-2015 09:00:00","07-04-2015 16:00:00")
该研究需要一个宏,该宏将用ALBK替换特定目录下许多此类工作簿中的CBK。这样做是为了下载替代CBK的ALBK数据。
使用formula属性获取单元格中formula的字符串值,然后在替换文本后重新赋值。
Dim formulaString as String
formulaString = ThisWorkbook.Sheets(1).Range("A1").Formula
formulaString = Replace(formulaString,"CBK","ALBK")
ThisWorkbook.Sheets(1).Range("A1").Formula = formulaString
查看工作簿中的每个工作表
Dim wb as workbook
Dim i as integer
set wb = thisworkbook 'or whatever you choose to open here
for i = 1 to wb.worksheets.count
wb.sheets(i).range("A1").Formula = Replace(wb.sheets(i).range("A1").Formula,"CBK","ALBK")
next i