🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

1028閲覧

C#からVB.NETへの変換について

Kruth

総合スコア13

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2019/11/06 05:58

C#

1sheet.CellMouseDown += (s, e) => sheet.StartEdit(e.CellPosition);

VB

1sheet.CellMouseDown += Function(s, e) sheet.StartEdit(e.CellPosition)

(一応変換サイトを使って変換しました。)

上記コードをVB.NETに変換したいんですが、
まったくわかりません。

変換後のコードがほしいのではなく、理解して自分で変換出来るようになりたいと思っているので、
クラスやイベントについてわかりやすく説明されているサイトなどあったら教えていただきたいです。

シートのセルがクリックされた時、そのセルで編集をスタートして
って捉えたんですが、意味自体はあっていますか?

右も左も分からない状態なので、質問がすごくわかりにくい部分があるかもしれません。
補足指示を受けましたらすぐに補足させていただきます。

よろしくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

draq

2019/11/06 06:31

なにがわからないのかわかりません。 わからないのはC#の文法?VB.netの文法?イベントの発生トリガー? 文法がわからないのであれば、まずは公式ガイド読んでください。 イベントの発生トリガーであれば、該当のコントロールのドキュメント読んでください。
Kruth

2019/11/06 06:49

VB.NETの「+= Function(s, e)」この部分の意味も文法もわかりません。 +=で検索してみましたが、 a += 1 の加算文法しか出てこず、 これではないと重い質問させていただきました。 よろしくお願い申し上げます。
papinianus

2019/11/06 13:42

ゴールの設定を確認したいのですが、任意のC#ソースをVB.NETに書き換えられるようになることですか?それとも特定の目的のために、C#なら参考になるコードがあるのをVB.NETにしたい、ということですか?
guest

回答2

0

ベストアンサー

質問に書かれている変換後VB.NETコードは誤っています。
コードの意図はイベントハンドラの追加をしたいのでしょうが、C#では「イベントハンドラの追加」と「算術加算・代入演算子」が全く同じ表現で書かれるので、変換後VB.NETコードはイベントに算術加算・代入を行おうとするという意味不明なコードになってしまっています。

以下URLの説明を読んでみてください。

実行時にイベントハンドラを追加する
https://dobon.net/vb/dotnet/beginner/eventhandle.html#addhandler

追加するイベントハンドラはラムダ式で指定されています。
https://www.atmarkit.co.jp/fdotnet/rapidmaster/rapidmaster_02/rapidmaster_02.html

投稿2019/11/06 06:59

ku__ra__ge

総合スコア4524

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Kruth

2019/11/07 07:37

大変わかりやすかったです。 イベントハンドラーを使って実装するんですね。 うまく実装することができましたので、ベストアンサーにさせていただきます。
guest

0

VB.NETの「+= Function(s, e)」この部分の意味も文法もわかりません。

その += は C# ではイベントにハンドラをアタッチするものですが、VB.NET では使えません。変換がちゃんとできてないのでしょう。

投稿2019/11/06 06:58

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問