Hola, saludos,
He venido a solicitar ayuda con un código que me esta quebrando la cabeza xD.
El tema es que tengo un programa para digitar pedidos de materiales, tengo todo listo, excepto la parte donde copio los datos del List1 al porta papeles, he probado muchos códigos pero ninguno parece funcionar.
Este es el codigo:
Private Sub CopiarOC_Click()
Dim strList As String
Dim i As Integer
For i = 0 To Me.List1.ListCount - 1
If Len(Trim(Me.List1.List(i))) > 0 Then
strList = strList & Trim(Me.List1.List(i)) & " "
End If
Next i
Dim MyData As DataObject
Set MyData = New DataObject ' he aqui el error T_T
MyData.Clear
MyData.SetText Trim(strList)
MyData.PutInClipboard
End Sub
El problema con el código es que me da el error siguiente:
Error de compilación,
El uso de la palabra clave New no es valido.
Pensaran que programar en VB6 es arcaico, pero tengo todo listo, solo me falta eso y no he podido solucionarlo, y he venido para ver si me pueden guiar :).-
De igual forma he probado añadiendo los items a un archivo .txt y copiarlos desde ahi, pero creo que es poco útil si de igual forma los tendré en el listbox.
Espero alguien me pueda ayudar. Saludos y gracias de ante mano :D
En VB 6 tienes el objeto Clipboard: http://msdn.microsoft.com/es-es/library/ebwdx8yh(v=vs.90).aspx (http://msdn.microsoft.com/es-es/library/ebwdx8yh(v=vs.90).aspx)
Saludos!
Hola, gracias por tu respuesta, pero no me ha funcionado. No se si lo estare haciendo bien, el tema es que llevo muy poco programando en VB, pero no logro hacer que funcione,
Clipboard.Clear
Clipboard.GetData List1.ItemData, vbCFText
If Clipboard.GetFormat(vbCFText) Then
List1.Text = Clipboard.GetText(vbCFText)
End If
Ese código se supone que va en un botón que se llama CopiarOC, y debe copiar todos los datos en el elemento List1, pero me da error que dice "el valor de la propiedad no es valido, igual lo he probado con SetText y nada.
Lo he solucionado, porfin!! xD,
Dejo como lo hice por si a alguien mas le sirve. Saludos y gracias por la ayuda!!!
Dim s As Integer, c As String
For s = 0 To List1.ListCount - 1
c = c & List1.List(s) & vbCrLf
Next
Clipboard.Clear
Clipboard.SetText c
End Sub
Excelente :D , gracias ami tambien me sirbió
Jojoj que bueno xD