1. 程式人生 > >【轉載】 VB.NET 複製貼上EXCEL資料到DataGridView

【轉載】 VB.NET 複製貼上EXCEL資料到DataGridView

 Function pasteExcel(ByVal DGV As DataGridView)

        Try    ' 當前單元格是否選擇的判斷

            If DGV.CurrentCell Is Nothing Then

                Return (0)

            End If

            If DGV.Rows.Count = 1 Then

                DGV.Rows.Add("", "")

                DGV.CurrentCell = DGV.Item(0, 0)

            End If

            Dim insertRowIndex As Integer = DGV.CurrentCell.RowIndex

            ' 獲取剪下板的內容,並按行分割

            Dim pasteText As String = Clipboard.GetText()

            If String.IsNullOrEmpty(pasteText) Then

                Return (0)

            End If

            pasteText = pasteText.Replace(vbCrLf, vbLf)

            pasteText = pasteText.Replace(vbCr, vbLf)

            pasteText.TrimEnd(New Char() {vbLf})

            Dim lines As String() = pasteText.Split(vbLf)

            Dim cell As String()

            ReDim Preserve lines(lines.Length - 2) '防止粘貼後出現空白

            For i As Integer = 0 To lines.Length - 1

                cell = lines(i).Split(ControlChars.Tab)

                For o = 0 To cell.Length - 1

                    If DGV.CurrentCell.ColumnIndex + o > DGV.Columns.Count - 1 Then DGV.Columns.Add("", "")

                    If DGV.CurrentCell.RowIndex + i > DGV.Rows.Count - 2 Then DGV.Rows.Add("", "")

                    DGV.Item(DGV.CurrentCell.ColumnIndex + o, DGV.CurrentCell.RowIndex + i).Value = cell(o)

                Next
            Next


            If DGV.CurrentCell.ColumnIndex = 0 Then

                Dim rtn& = MsgBox("檢測到此次貼上的目標位置處於表的第一行,是否需要將貼上內容的第一行放入列標題?", MsgBoxStyle.YesNo, "提示!")

                If rtn = MsgBoxResult.Yes Then

                    For i As Integer = 0 To DGV.Columns.Count - 1

                        For o As Integer = 0 To DGV.Rows.Count - 2

                            DGV.Rows.Item(o).HeaderCell.Value = Str(o + 1)

                            If o = 0 Then DGV.Columns.Item(i).HeaderText = DGV.Item(i, o).Value

                            DGV.Item(i, o).Value = DGV.Item(i, o + 1).Value

                        Next

                    Next

                    DGV.Rows.RemoveAt(DGV.Rows.Count - 2)

                End If

            End If

            Return (0)

        Catch ex As Exception

            MsgBox(ex.Message)

        End Try

        Return (0)

    End Function '貼上excel資訊

相關推薦

轉載 VB.NET 複製貼上EXCEL資料到DataGridView

 Function pasteExcel(ByVal DGV As DataGridView)         Try    ' 當前單元格是否選擇的判斷             If DGV.CurrentCell Is Nothing Then            

轉載ASP.NET Core 依賴註入

microsoft 銷毀 分享圖片 ros inview 我們 col info 服務 本文轉自:http://www.jessetalk.cn/2017/11/06/di-in-aspnetcore/ 為什麽要寫這個博客 DI在.NET Core裏面被提到了一個非常重

轉載ASP.NET 固定GridView的表頭和某幾列

原連結: 固定GridView的表頭和某幾列 原文連結有個Demo程式碼,如果有需要的話可以點選原文再下載。 原來系統中有很多超長gridview,需要使用者向右平行拉動才能看到後面的內容。目前開發一

分類 - VB.NET

專欄達人 授予成功建立個人部落格專欄

轉載ASP.NET實現文件下載的功能

同步 summary spa chm double cati 返回 ive utf 文件下載是很多網站中含有的常用功能,在ASP.NET中可以使用FileStream類、HttpRequest對象、HttpResponse對象相互結合,實現輸出硬盤文件的功能。該方法支持大文

轉載ASP.NET常用數據庫Sqlserver通過維護計劃定時自動備份

完整 完成 任務 登錄 點擊 手動 行數據 幫助文檔 路徑 Sqlserver數據庫的運維過程中,數據庫的備份操作至關重要,平時我們都是手動進行數據庫的備份操作。如果要做到讓數據庫定時自動備份,則可以使用Microsoft SQL Server Management Stu

轉載解決Java關鍵字作為json資料欄位名問題

轉自:https://blog.csdn.net/jjj11223344/article/details/79957559   在java命名規範中,我們不能採用Java關鍵字如 public、static等命名,但是在服務端資料命名時我們往往會採用某一欄位的英文來命名,這有時候就

轉載最全的計算廣告資料,廣告演算法工程師入門

在廣告這樣的參與者可以針對同一個標的物不斷調整出價的拍賣環境中,通過聰明的定價策略,完全可能為整個市場創造更高的收益以及其他好處。 拍賣方式 分配規則 支付方式 是否知道別人的出價 應用場景 英式拍賣(Open) 競買者逐步加價, 直到最後只剩下一個投標人為止 出價最高者得

轉載.NET Remoting學習筆記(一)概念

leg false 情況下 system 版權 while 對象模式 無需 new 目錄 .NET Remoting學習筆記(一)概念 .NET Remoting學習筆記(二)激活方式 .NET Remoting學習筆記(三)信道 背景 自接觸編程以來,一直聽過這個名

轉載.NET Remoting學習筆記(三)信道

star fig cati 服務端 pro net string spa 處理類型 目錄 .NET Remoting學習筆記(一)概念 .NET Remoting學習筆記(二)激活方式 .NET Remoting學習筆記(三)信道 參考:♂風車車.Net .NET Fra

Selenium2+python自動化58-讀取Excel數據(xlrd)轉載

filepath image index all 參數 init -1 else 編輯 前言 當登錄的賬號有多個的時候,我們一般用excel存放測試數據,本節課介紹,python讀取excel方法,並保存為字典格式。 一、環境準備 1.先安裝xlrd模塊,打開cmd,輸

轉載“菜”鳥理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)

ado 編寫 初學 運行 我不 簡單 ati compiler 菜譜  既然要學.NET,就要先認識認識她,我不喜歡大段大段文字的東西,自己通過理解,畫個圖,來看看.NET的沈魚落雁,閉月羞花之容。   最下層藍色部分是.NET Framework的基礎,也是所有應用軟件

轉載ASP和ASP.NET根本區別

離開 事件 更強 href 都在 框架 簡單 sha 提高 ASP.NET和ASP的最大區別在於編程思維的轉換,而不僅僅在於功能的增強。ASP使用VBS/JS這樣的腳本語言混合html來編程,而那些腳本語言屬於弱類型、面向結構的編程語言,而非面向對象,這就明顯產生以下幾個問

轉載IIS與asp.net管道

解決 ati arc mar 初始化 upd 最重要的 tpc 事件處理程序 閱讀目錄 asp.net是什麽 HTTP協議 IIS與asp.net asp.net管道 參考資料   我們在基於asp.net開發web程序,基本上都是發布部署到安裝了IIS的windows服

轉載Python操作Excel的讀取以及寫入

body .sh open 列數 讀取 efault jin rap ring 轉載來源:https://jingyan.baidu.com/article/e2284b2b754ac3e2e7118d41.html #導入包 import xlrd #設置路徑 path

轉載DELPHI操作excel(轉)

DELPHI操作excel(轉) (一) 使用動態建立的方法 首先建立 Excel 物件,使用ComObj: var ExcelApp: Variant; ExcelApp := CreateOleObject( ''Excel.Application'' );

ASP.NET Session丟失問題解決方案總結及判斷Session是否過期轉載

判斷Session是否過期: 通過BasrPage或IHtttpMoudle實現public class BasePage : System.Web.UI.Page    {      public  BasePage()      {       }       prot

轉:vim小小記vim的複製貼上(包括系統剪貼簿)

1、vim常用複製貼上命令 Vim的複製貼上命令無疑是y (yank),p(paster),加上yy,P PS: vim有個很有意思的約定(我覺得是一種約定),就是某個命令的大小寫都是實現某種功能,只是方向不同,比如: w 跳轉到下個word,W:跳轉到上個word f 某行

vim小小記vim的複製貼上(包括系統剪貼簿)

1、vim常用複製貼上命令 Vim的複製貼上命令無疑是y (yank),p(paster),加上yy,P PS: vim有個很有意思的約定(我覺得是一種約定),就是某個命令的大小寫都是實現某種功能,只是方向不同,比如:w 跳轉到下個word,W:跳轉到上個word f

以OLE方式讀寫EXCEL的C++類轉載

◆C++中的【L"https://msdn.microsoft.com/library"】。 這個是C++標準規定的寫法。詳見以下連結: ◆VC中的 _T 和 _TEXT 和 TEXT 巨集。 _T和_TEXT和TEXT是通用的文字巨集,它們在被使用的時候,需要和字串