お世話になります。
Delpho10 Professionalを使っています。
次にようなプログラムを作りました。
//********************
case Index of
0:begin //Form1から呼び出し
Edit1.Text := Form1.StringGrid1.Cells[1,i];
Edit2.Text := Form1.StringGrid1.Cells[2,i];
Edit3.Text := Form1.StringGrid1.Cells[3,i];
Edit4.Text := Form1.StringGrid1.Cells[4,i];
end;
1:begin //Form4から呼び出し
Edit1.Text := Form4.StringGrid3.Cells[1,i];
Edit2.Text := Form4.StringGrid3.Cells[2,i];
Edit3.Text := Form4.StringGrid3.Cells[3,i];
Edit4.Text := Form4.StringGrid3.Cells[4,i];
end;
2:begin//Form5から呼び出し
//
end;
//****************
スッキリとさせるために
x := Form1.StringGrid1;として
Edit1.Text := (x).Cells[1,i];
Edit2.Text := (x).Cells[2,i];
x := Form4.StringGrid3;として
Edit1.Text := (x).Cells[1,i];
Edit2.Text := (x).Cells[2,i];
というような書き方はできないでしょうか?
No.5ベストアンサー
- 回答日時:
>どこにどう書けばいいのか...
ハンドラの冒頭、begin の前に
var
x: TStringGrid;
とかくだけ。簡単です。
この辺は基本の基本。分かってないと他も厳しいですよ。
ありがとうございます。
x: TStringGrid;の部分でエラーになり、この質問分は補足に書いたような方法で解決したのですが、別のところで同様の書き方が必要になり、いろいろ試したところ、エラーになる原因がわかりました。
このコードを書くFormはStringGridを使っておらず、usesのところにGridsを記入していませんでした。
usesにGridsを追加して
x := Form1.StringGrid1;
または
x := Form4.StringGrid3;
としたところ、エラー発生せずにコンパイルできました。
No.1
- 回答日時:
変数の型 (と名前) が適切であれば, 例えば
case Index of
0: x := Form1.StringGrid1;
1: x := Form4.StringGrid3;
// 以下省略
end; // case Index に対する end
Edit1.Text := x.Cells[1,i];
// など
とできるような気がします.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 【VBA】特定のワードが入っている行全体を塗りつぶしたい 4 2022/04/20 15:22
- Visual Basic(VBA) ExcelVBAで、index、match関数を使用して、指定範囲に出力したい 3 2022/10/18 21:53
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
レコードセットにnullの場合
-
pascalでの二分探索(バイナリ...
-
TreeViewのTag情報取得
-
subsequentとnextの違いってな...
-
タイムアウトする仕組みを作りたい
-
Matlab
-
VBA public変数はどのようなこ...
-
C#のループでtextboxに値を入れ...
-
リストビューの列ヘッダーの幅...
-
チェックボックスを操作できな...
-
アクセスできない保護レベルエ...
-
Pythonのre.split()の正規表現...
-
VB.NETでのイベントの途中終了
-
VBAで入力数値について
-
ユーザーフォームへのデータ入...
-
visual basic初心者です。 visu...
-
C言語のサフィックスについて
-
Functionの戻り値を配列にした...
-
他のフォームから別のフォーム...
-
Excel VBAでsub,dimは何の略?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコードセットにnullの場合
-
タイムアウトする仕組みを作りたい
-
subsequentとnextの違いってな...
-
verilogのcase文
-
【FPGA】VHDLのprocessとevent
-
vbsのmsgboxランダム表示について
-
TreeViewのTag情報取得
-
Verilogの文法
-
リスト間のアイテム移動について
-
日付の重複
-
文字の連結がうまくいかない
-
エクセルVBAついて ①if•••••the...
-
delphi
-
なんで? cEn-P^-1AP=P^-1(cEn-AP)
-
Scilabの&と&&に関する質問です
-
vb2010webページのリンクをクリ...
-
EXCEL VBA 文字 アドレス 検...
-
整順リスト形式の英単語辞書(pa...
-
Matlab
-
三項でたとえば交換って
おすすめ情報
すばやい回答ありがとうございます。
変数の型をどうしたらいいのか...
私にはちょっとわからないです。
var
x:TForm1.StringGrid1;にしてもうまくいきません。
>TForm1.StringGrid1は変数であって、型ではないと思いますが…違いますかね?
あっ、確かにそうです。
ありがとうございます。
どうやって調べるんでしょうか?
どこにどう書けばいいのか...