• ベストアンサー

アクティブレコードの値を取りたい。

ひょっとしたらすごく難しいことなのかもしれませんが、 表形式のテーブルに各行に編集ボタンをつけます。 編集ボタンを押すと、伝票1の単票形式のフォームが表示され、内容を編集できるという形を作りたいと思っています。ここで問題なのが、編集ボタンを押したときに どうやって、現在、カーソルのあるレコードの 伝票番号を帳票に受け渡すかなんですが、よいアイデア があれば、おしえていただけないでしょうか。 伝票番号   商品   1 りんご    編集ボタン   2      みかん    編集ボタン   3      なし     編集ボタン

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

> これを、 「伝票番号 = "002"」に変更できないものでしょうか。 シングルクォーテーションでも文字列と扱ってくれますので、 「伝票番号 = '002'」 とすればOKです。 つまり、 stLinkCriteria = "[伝票番号]='" & Me![伝票番号] & "'" P.S. 豆知識です。 ダブルクォーテーションを使用するのであれば、 stLinkCriteria = "[伝票番号]=""" & Me![伝票番号] & """" と、ダブルクォーテーションをダブルクォーテーション2つで表記します。

7_11shop
質問者

お礼

すばらしい。できました。 すごく助かりました。ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

エクセルであれば、データ-フォームで表示されるフォームを使えばどうでしょう。もし旨くニーズに合えば簡単です。 (例データ)A1:C8 番号 氏名 住所 23 大田 大田区 24 今井 豊島区 25 木島 千代田区 26 河村 三鷹市 27 国本 港区 28 近藤 江東区 29 鈴木 北区 (操作) A1:C6を範囲指定して データ-フォーム (検索・アクセス) ・番号フィールドに番号を指定->例 24-->今井分が出る) ・検索条件をクリック 氏名フィールドに氏名(例 河村)を指定-->26分が出る。 アクセスであれば、テーブルの各行にボタンを貼りつけたりしませんでしょう。むしろ不可能では。 むしろメニュの編集作業ボタンをクリック-編集用フォームが開く-フォームのテキストボックスとテーブルが連動 となるはず。

7_11shop
質問者

お礼

ご回答ありがとうございます。 お時間をかけてご回答いただいたのに、大変申し訳 ないのですが、今回は、Accessのみで作らないと いけないため、利用することができません。 また、何かの機会がありましたら、参考にさせていただきます。ありがとうございました。

すると、全ての回答が全文表示されます。
回答No.1

Accessでしょうか。当方の環境にはAccess2000があるので、これでお話します。 まず、単票形式のフォームを作ります。 次に、表形式のフォームを作ります。表形式のフォームの詳細セクションに編集ボタンを貼ります。 編集ボタンのプロパティの、イベント→クリック時を[イベント プロシージャ]にし、「...」ボタンを押します。これでVisual Basic Editorが開きます。 Private Sub コマンド1_Click() などと書かれていると思います。 単票形式のフォームのフォーム名をForm1とすると、 Dim stDocName As String Dim stLinkCriteria As String stDocName = "Form1" stLinkCriteria = "[伝票番号]=" & Me![伝票番号] DoCmd.OpenForm stDocName, , , stLinkCriteria とすれば、完成です。

7_11shop
質問者

補足

ご回答ありがとうございます。 下記の方法を試してみたんですが、 stLinkCriteria = "[伝票番号]=" & Me![伝票番号] の部分の変数で、「伝票番号 = 002」という値が 入ってしまいます。 これを、 「伝票番号 = "002"」に変更できないものでしょうか。 初心者ですいません。。

すると、全ての回答が全文表示されます。

関連するQ&A