im试图用VBA
将一些数据放在剪贴板中代码类似:
Sub PasaraformatoSQLDATA()
Dim clipboard As MSForms.DataObject
Dim ArraySelc As Variant
Dim SourceRange As Range
Dim Lenr As Long
Dim ArrayString As Variant
Set SourceRange = Selection.CurrentRegion
ArraySelct = SourceRange.Value
Lenr = UBound(ArraySelct)
For i = 1 To Lenr
ArraySelct(i, 1) = "'" & ArraySelct(i, 1) & "'"
Next i
'Condicion zero
ArrayString = ArraySelct(1, 1)
'Rellenar el resto
For p = 2 To Lenr
ArrayString = ArrayString & "," & ArraySelct(p, 1)
Next p
clipboard.SetText ArrayString
clipboard.PutInClipboard
End Sub
该代码要做的是在一个范围内获取任何给定的信息,将其取用并放入带有格式" data"的单个字符串中,&'data2,'&...
,但是我在最后一部分中遇到问题,将我的信息放入剪贴板中。我得到
错误424,需要一个对象。
你能帮我吗?我认为错误可能是在阵列串上,实际上是一个数组,应该是一个字符串,但我只是猜想。
事先感谢您的任何帮助!
最好的问候
@vicentg给出的解决方案正在添加第一个dim,而在同一行上则添加了新的!
Sub PasaraformatoSQLDATA()
Dim clipboard As new MSForms.DataObject
Dim ArraySelc As Variant
Dim SourceRange As Range
Dim Lenr As Long
Dim ArrayString As Variant
Set SourceRange = Selection.CurrentRegion
ArraySelct = SourceRange.Value
Lenr = UBound(ArraySelct)
For i = 1 To Lenr
ArraySelct(i, 1) = "'" & ArraySelct(i, 1) & "'"
Next i
'Condicion zero
ArrayString = ArraySelct(1, 1)
'Rellenar el resto
For p = 2 To Lenr
ArrayString = ArrayString & "," & ArraySelct(p, 1)
Next p
clipboard.SetText ArrayString
clipboard.PutInClipboard
End Sub