En microsoft para separar unas filas de otras se utiliza CRLF que corresponde a gb.tab + key.enter.
En Unix/Linux para separar unas filas de otras se utiliza LF que corresponde a gb.newline chr(10)
Adaptar esta rutina a nuestro caso según necesitemos.
Doy por creado un gridview al que llamaré gd
Creo un botón al que le asigno este código:
Código: Seleccionar todo
Sub Boton_click()
'declarar variables
DIM Grid AS String, fila AS Integer, Columna AS Integer
DIM, MaxFilas AS Integer, MaxColumnas AS Integer
Código: Seleccionar todo
MaxColumnas = gd.columns.count - 1 '---> número de columnas de gd
Maxfilas = gd.Rows.count - 1 '---> número de filas de gd
Copiar el encabezado horizontal del GD:
Código: Seleccionar todo
FOR columna = 0 TO MaxColumnas '---> para cada columna
Grid &= gd.Columns[columna].text '---> poner el encabezado de columna
IF columna < MaxColumnas THEN
Grid &= gb.Tab '---> añadir un TAB si no es la última columna
ELSE
Grid &= gb.NewLine '---> añadir un LF si es la última columna
ENDIF
NEXT
Código: Seleccionar todo
FOR fila = 0 TO Maxfilas '---> para cada fila
FOR columna = 0 TO MaxColumnas '---> para cada columna
grid &= gd[fila, columna].Text ' copiar el valor de la celda
IF columna < MaxColumnas THEN
Grid &= gb.Tab '---> añadir un TAB si no es la última columna
ELSE
Grid &= gb.NewLine '---> añadir un LF si es la última columna
ENDIF
NEXT
NEXT
Código: Seleccionar todo
'Pasar el resultado al portapapeles
Clipboard.Copy(Grid)
end