Một công việc khác là xây dựng một chuỗi với một ký tự thay thế tạm thời. Sau đó, bạn có thể sử dụng REPLACE để thay đổi từng ký tự tạm thời thành dấu ngoặc kép. Tôi sử dụng dấu ngã làm ký tự thay thế tạm thời.
Đây là một ví dụ từ một dự án mà tôi đã và đang thực hiện. Đây là một thủ tục tiện ích nhỏ để sửa chữa một công thức rất phức tạp nếu / khi ô vô tình bị dẫm lên. Đây là một công thức khó để nhập vào một ô, nhưng tiện ích nhỏ này sẽ sửa nó ngay lập tức.
Sub RepairFormula()
Dim FormulaString As String
FormulaString = "=MID(CELL(~filename~,$A$1),FIND(~[~,CELL(~filename~,$A$1))+1,FIND(~]~, CELL(~filename~,$A$1))-FIND(~[~,CELL(~filename~,$A$1))-1)"
FormulaString = Replace(FormulaString, Chr(126), Chr(34)) 'this replaces every instance of the tilde with a double quote.
Range("WorkbookFileName").Formula = FormulaString
Đây thực sự chỉ là một thủ thuật lập trình đơn giản, nhưng nó giúp nhập công thức trong mã VBA của bạn khá dễ dàng.