Excelの複数行をDataGridViewに張り付けてテキストボックスに入れる への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 初期値Y  (社会人)
投稿日時
2023/6/19 16:06:12
使用言語はvb.net visualstudio2017を使用しています。
Excel(2016)のセルA1~A100をコピーしてDataGridViewのセル貼り付けてそれをテキストボックスに記入する方法を教えてください。
DataGridViewは2列で左に管理番号(=行数)、右に品名となっています。
初期値は管理番号1で品名は空白となっています。
品名の一番上のセル(空白)にエクセルの値をコピペし、100行表示されるようにしたいです。
また、貼り付けられたら管理番号を自動で記入する。
挿入ボタンみたいなのを用意し、それを押下すると品名を100行分テキストボックスに横並びで記入する。
以上、よろしくお願いいたします。
Excel(2016)のセルA1~A100をコピーしてDataGridViewのセル貼り付けてそれをテキストボックスに記入する方法を教えてください。
DataGridViewは2列で左に管理番号(=行数)、右に品名となっています。
初期値は管理番号1で品名は空白となっています。
品名の一番上のセル(空白)にエクセルの値をコピペし、100行表示されるようにしたいです。
また、貼り付けられたら管理番号を自動で記入する。
挿入ボタンみたいなのを用意し、それを押下すると品名を100行分テキストボックスに横並びで記入する。
以上、よろしくお願いいたします。
プログラムから、直接 .xlsx ファイルを読み取る方法もありますが、
今回はクリップボード経由で操作したいのですね?
書式等は不要で、セル値だけ得られれば良いのでしょうから、
このように書けば OK です。
これにより、選択範囲の内容が文字列として得られます。
列の区切りは タブ文字
行の区切りは CrLf です。
このようにして、個々のセルのデータにアクセスできます。
なお、セル内改行がある場合は、Lf が使われます。
また、改行を含むセルは「"」で囲まれた文字列になります。
セル内に「"」があった場合も「"」で囲まれます。その場合、元の「"」は「""」と連記されるので
それらを復元する処理も必要になってきます。
切り出した文字列は、必要に応じて二次元配列やジャグ配列などに
詰め直しておくと便利かもしれません。
> DataGridViewのセル貼り付けてそれをテキストボックスに記入する方法を教えてください。
ん? DataGridView に表示したいのですか?
TextBox に表示したいのですか?
まぁいずれにせよ、上記のようにして切り出した文字列を
DataGridView の任意のセルあるいは TextBox の Text プロパティに
セットしてやれば、目的を果たせるかと思いますよ。