vba - VBA 中是否有任何 C 样式的字符串格式?
问题描述
我想在 VBA 中使用 C 风格的字符串格式,以便像在 Python 中那样更轻松地发送 SQL 指令。
有没有类似的?
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)
谢谢,
解决方案
您可以像这样使用 System.Text.StringBuilder:
Function FormatString(Text As String, ParamArray Args() As Variant) As String
Dim values()
Dim n As Long
ReDim values(UBound(Args))
For n = 0 To UBound(Args)
values(n) = Args(n)
Next
With CreateObject("System.Text.StringBuilder")
.AppendFormat_4 Text, values
FormatString = .toString
End With
End Function
测试
您可以在此处找到我编写的用于包装 System.Text.StringBuilder 的类:Bringing The System.Text.StringBuilder Up To Lightning Speed In The VBA。
推荐阅读
- oracle - 我们如何通过使用执行子句重新创建 TRG_1 触发器来指定 TRG_2 触发器应在 TRG_1 触发器之前执行?
- scala - 当参数是对象类型时,如何在 F# 中要求多个接口?
- javascript - 如何对数组中的混洗元素进行编号?
- python - 如何将 PySpin 与 opencv python 一起使用?
- sightly - Sightly - 仅在有标题时才显示标题标签
- c# - Parsing LSM6DSL raw values
- python - 正则表达式匹配但 re.match() 不返回任何内容
- arrays - 这个问题是在编码测试中提出的。直到现在我都找不到解决方案
- java - Spark在kafka中写入数据集,启用KryoSerializer
- matlab - 有没有办法解决未知变量而不是使用求解?