 
			
				16/09/2010, 12:40
			
			
			     |  
      |    |    |    Fecha de Ingreso: marzo-2007  
						Mensajes: 74
					  Antigüedad: 18 años, 7 meses Puntos: 0     |        |  
  |      Respuesta: copiar columna de excel y pegarla en datagridview        Yo lo hago de la siguiente forma:   
a) Tienes que cuidar que no sobrepase el tamano de tu datagridview tanto en renglones como en columnas.   
B) Recuerda que al escribir el material de apoyo este foro quita o agrega espacios.   
C) Con esta rutina puedes copiar un renglon, una columna o toda una hoja de excel a un datagridview     
D) Es libre de repoduccion la puedes copiar en cualquier site, pero recuerda no borrar los creditos.      
Saludos.         
  Private Sub Copia(ByVal X As Integer, ByVal Y As Integer, ByVal St As String)   
        MsgBox(" Datagridview.rows(" & Y & ").cells=(" & X & ").value=" & St)   
    End Sub   
    Private Sub CmdPegar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdPegar.Click 
        Dim dgvRow As New DataGridViewRow 
        Dim M1 As String 
        Dim Letra As String 
        Dim I As Long 
        Dim Agrega As Boolean 
        Dim Row_Y As Integer 
        '  Creditod :Rutina creada pot Fernando Lugo  - winexim 
        If My.Computer.Clipboard.ContainsText() = True Then 
            M1 = "" 
            X_Fecha = Now 
            X_Cont = 0 
            Row_Y = 0 
            Agrega = True     
            For I = 1 To Len(My.Computer.Clipboard.GetText) 
                Letra = Mid(My.Computer.Clipboard.GetText, I, 1) 
                If Letra <> Chr(9) Then 
                    If Letra <> Chr(13) Then 
                        If Letra <> Chr(10) Then 
                            M1 = M1 & UCase(Letra) 
                        Else 
                            Copia(X_Cont, Row_Y, M1) 
                            X_Cont = 0 
                            MsgBox("Renglon nuevo " & M1) 
                            Row_Y = Row_Y + 1 
                            M1 = "" 
                        End If 
                    End If 
                Else   
                    Copia(X_Cont, Row_Y, M1) 
                    X_Cont = X_Cont + 1 
                    M1 = "" 
                End If 
            Next I 
            My.Computer.Clipboard.Clear() 
        Else 
            MsgBox("No hay texto en portapapeles") 
        End If   
    End Sub           |