ACCESS2000を使用しています。

フォームを作り、画面のテキストボックスに値を入れると、エラーになります。
エラーコードは 2448。
エラーメッセージは オブジェクトに値を代入できない と出ますが、ヘルプが参照できません。
どういうことなのでしょうか。

A 回答 (4件)

返答が遅くなりましてすいません。



>連結<->非連結はプロパティでマニュアル変更が出来そうな気がするのですが、>その方法が見つかりません。
マニュアルでプロパティを操作する場合、
「プロパティ」ウィンドウの「データ」タグの「コントロールソース」を設定します。
連結コントロールの場合、ここに連結されている項目名が表示されています。
非連結にするには、ここを消してください。
(普通にBackSpaceとかで消えます。)
これでOKです。

>今度はクエリーで2つのファイルをマッチングして作成したのですが・・・・
これは、別の問題になると思いますので、これでもう一つ質問を投げてはいかがでしょうか?
そうすればこの質問を見た方以外の方の目にも触れますから、それだけ回答が来る可能性が高くなりますよ。
また、記入していただいた内容だけでは原因を特定するのは厳しいと思いますので、今回で補足していただいたようにサンプルソースや、テーブルの関係、どのタイミングでどのように操作したか、エラーNoはこれ・・・
といったようにできるだけ細かく書いたほうが回答される可能性が高いと思いますよ。(めんどくさいんですけどね。)

では、がんばってください。
    • good
    • 0

これが原因かわかりませんが、


こちらで試して同じようなエラーが出るものをお知らせします。
1・連結テキストボックスの連結項目が、
  現在のフォームにリンクしているテーブルの項目にない。
2・連結テキストボックスの連結項目が、
  オートナンバー型などの入力を許さないデータ型になっている。

別のフォームからコピーされたものということなので、
そのテキストに設定されている項目が違う可能性はあります。また、内部的にそのリンクの設定がコピーによって変になっている
可能性もありますので、一度そのテキストのデータ項目を再設定して
みてはいかがでしょうか?

コントロール自体をコピーして使うということは通常やってます。
そのほうが効率いいですからね。
ですから、やり方自体は問題はないはずです。

駄目なようでしたら補足してください。
    • good
    • 0
この回答へのお礼

早速回答いただきましてありがとうございます。

 ウィザードで作成するということは、フォームに貼り付ける項目は非連結以外はすべてテーブルにリンクしていなければなら無いということですね。
連結<->非連結はプロパティでマニュアル変更が出来そうな気がするのですが、その方法が見つかりません。

 今度はクエリーで2つのファイルをマッチングして作成したのですが、マッチングキーに新しい値をセットしようとすると、エラーになります。
テーブル”xxx”のレコードに、'一'側と対応するレコードがなくなります。
と、いうエラーが出て、またヘルプを参照できません。
結合プロパティで、両方一致するものだけという条件をはずしてあるので構わないと思ったのですが、うまくいきません。

 それに、こういう処理をすると、ACCESSが正常に終了しません。
どういうことなのでしょうか。

お礼日時:2001/09/22 15:13

 テキストボックスに値を入れるタイミングは?


ユーザが入れるの?
 → 例えば、キーボード等から値を入力するのですか? これでエラーになる様なら、その時のコードと作成手順を書いて下さい。また、再現方法等が解りましたら、教えて下さい。

コード(VBA)から入れるの?
 この場合が多いと思いますが、どのタイミングでいれるかでエラーになります。フォームのロード時では、またテキストボックスのオブジェクトができていないので、上記の様なエラーになります。その場合には、フォームのアクティブ時等にコードを移して実行してみて下さい。

この回答への補足

回答ありがとうございます。
説明が不足していました。 コードは No.1 の補足に記述しました。

フォームをウィザードで作成したのですが、うまくいかない部分は、別のフォームからコピーして張り付けたテキストボックスです。 こんなやり方は出来ないのでしょうか。
よろしくお願いいたします。

補足日時:2001/09/21 23:27
    • good
    • 0

エラーの状況をもう少し詳しくうかがってよろしいですか?


>フォームを作り、画面のテキストボックスに値を入れると、エラーになります。
テキストボックスに値を入れるとは?
テキストボックスにキーボードから入れている。
VBAで、テキストコントロールに値を代入している。
などなど

また、VBAでやられているのでしたら、エラーの出るコードも教えていただけると助かります。

この回答への補足

回答ありがとうございます。
説明が不足しておりました。
コードを記述します。

Private Sub Furigana_Change()
'==============================================
Set SB = DBEngine.Workspaces(0).OpenDatabase("\acs\skw.mdb")

Set CUrc = SB.OpenRecordset("custom")
Set CTrc = SB.OpenRecordset("karte")

CUrc.Index = "cualtkey"
CTrc.Index = "ctaltymd"

CUrc.Seek "=", Me!furigana
Me!shimei = CUrc!shimei        ' (1) ok

CTrc.Seek "=", CUrc!cuscd
Me!raitendate = CTrc!raikyakudate   ’(2) ok

Me!PermaKusuri = CTrc!PermaKusuri ' (3) err

End Sub

(1)はウィザードでフォームを作成しました。
(2)は非連結です。
(3)は 元は別のフォームで作成し、コピーして、該当フォームに貼り付けたのです。 どうもこのやり方がうまくいかないのか指定の仕方が違うのかと思います。(2)も最初は(3)と同様でしたが、うまくいかないので非連結にしました。
(2)と(3)のフォームレイアウトは帳票形式です。
(1)は単票形式です。

このぐらいでお分かりでしょうか。

補足日時:2001/09/21 23:09
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QHTML→PHP フォームの値の受け渡しができません

PHPをはじめたばかりの初心者です。
ネットでいろいろ調べましたがわからず困っています。
お助けくださいm(_ _)m

<内容>
フォームの入力内容をPHP側で参照できません。
具体的には、
<form method="post" action="test.php">
<select name="BirthDay" size="1">
<option value="1">1月生まれ</option>
<option value="2">2月生まれ</option>
<option value="3">3月生まれ</option>
</select>
<input type="submit" value="決定">
</form>
で飛ばした値を、
print($BirthDay);
で表示させようとしています。
しかし、$BirthDayには何も入ってきません。
ただ、できないのはローカル環境だけで、
実際、他のサーバーにアップしてやると正常に
動作します。
ローカル環境は
Win2000SP4+PHP4.4.1+Apache1.3.34
です。
httpd.confを見直しましたがわかりませんでした。
ぜひアドバイスをお願いしますm(_ _)m

PHPをはじめたばかりの初心者です。
ネットでいろいろ調べましたがわからず困っています。
お助けくださいm(_ _)m

<内容>
フォームの入力内容をPHP側で参照できません。
具体的には、
<form method="post" action="test.php">
<select name="BirthDay" size="1">
<option value="1">1月生まれ</option>
<option value="2">2月生まれ</option>
<option value="3">3月生まれ</option>
</select>
<input type="submit" value="決定">
</form>
で飛ばした値を、
print($BirthDay);
で表示させようと...続きを読む

Aベストアンサー

そういうときは

$_POST[BirthDay] で受け取ります
GETの場合は
$_GET[]です

Qエクセル VBA ユーザーフォーム リストボックスで選択した値をテキストボックスに自動表示

エクセル初心者です。
ユーザーフォームで検索窓を作成しリストボックスへ表示
         ↓
リストから選択すると同じユーザーフォーム内のテキストボックスに値が自動で表示
         
というフォームを作りたいのですがご教授お願いします。

A列   B列  C列   D列   E列
番号 / 品名 / 品番 / 原価 / メーカー
1    A   20×20  100  A社
2    A   20×30  150  A社
3    B   50×50  100  B社


下図のようなフォーマットで考えています。

Aベストアンサー

回答が付かないようなので、とりあえず・・・です。
シートの内容(A2:E4)をリストに表示し、そこで選択された行の内容をラベル?(A列・・・E列と表示されているところ)に表示するVBAを書いてみました。参考になりますかね?
もしかしたら、検索結果のみをリストに表示したいのでしょうか?
正直なところ、やりたいことがよくわからないので、適切な回答になっていないと思います。必要出れば追加で質問することをお勧めします。

以下、サンプルです。コードはユーザフォームの下に張り付けて下さい。
リストボックス名「ListBox1」
ラベル名「LabelA,LabelB,LabelC,LabelE」

Private Sub ListBox1_Click()
LabelA.Caption = ListBox1.List(ListBox1.ListIndex, 0)
LabelB.Caption = ListBox1.List(ListBox1.ListIndex, 1)
LabelC.Caption = ListBox1.List(ListBox1.ListIndex, 2)
LabelE.Caption = ListBox1.List(ListBox1.ListIndex, 4)
End Sub

Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 5
ListBox1.RowSource = "Sheet1!A2:E4"
ListBox1.ListIndex = 0
End Sub

回答が付かないようなので、とりあえず・・・です。
シートの内容(A2:E4)をリストに表示し、そこで選択された行の内容をラベル?(A列・・・E列と表示されているところ)に表示するVBAを書いてみました。参考になりますかね?
もしかしたら、検索結果のみをリストに表示したいのでしょうか?
正直なところ、やりたいことがよくわからないので、適切な回答になっていないと思います。必要出れば追加で質問することをお勧めします。

以下、サンプルです。コードはユーザフォームの下に張り付けて下さい。
リストボックス...続きを読む

Qhtmlからphpへの値の受け渡しについて

いつも助けてもらってます。
今回も宜しくお願い致します。

現在、複数のhtmlページから一つのphpを呼び出しているのですが、
phpのselect文の中で各ページの持つ定数(変数?)を使用したいと考えています。

phpのselect文
SELECT
*
FROM
ITEM
WHERE
ITEM_DIV = 各ページの定数(文字列)


各ページの定数は、必ず同じ物です(ダイエット、食品etc..)
グーグルなどで調べた結果、
POSTやSESSION、FORMで出来そうな感じだったのですが、

渡すものがいつも決まっていて、かつ一つなので
もっと簡単に渡せるんじゃないかな?と考えて投稿させてもらいました。

宜しくお願いします!!

Aベストアンサー

php側で、どのhtmlからリンクされたかが分かればいいと思いますので、
サーバ環境変数の $_SERVER['HTTP_REFERER'] で可能かと思います。

参考URL:http://lib.stwing.jp/archives/2005/09/php_server.html

QExcelVBAマクロでテキストボックスの値の代入

ExcelVBAマクロについて確認させてください。
下記のように読み込みたいファイルをフォームで指定して
それを変数aに読み込ませています。
この方法の他に、ユーザーフォームでテキストボックスを
作成してテキストボックス内で文字を記入してその文字を
変数aに読み込ませることは可能でしょうか。
可能であればその方法をぜひご教授ください。

----------------------------------
Sub sample()

Dim buf As String
Dim a As String

buf = Application.GetOpenFilename(FileFilter:="テキスト文書,*.txt", Title:="サンプル") 'フルパスも含めたファイル名をbufに代入

With CreateObject("Scripting.FileSystemObject").GetFile(buf).OpenAsTextStream'指定したファイルを開く
    a = .ReadAll'テキスト文書の内容を文字列aに代入
    .Close'指定したファイルを閉じる
End With

End Sub

ExcelVBAマクロについて確認させてください。
下記のように読み込みたいファイルをフォームで指定して
それを変数aに読み込ませています。
この方法の他に、ユーザーフォームでテキストボックスを
作成してテキストボックス内で文字を記入してその文字を
変数aに読み込ませることは可能でしょうか。
可能であればその方法をぜひご教授ください。

----------------------------------
Sub sample()

Dim buf As String
Dim a As String

buf = Application.GetOpenFilename(Fil...続きを読む

Aベストアンサー

> この方法の他に、ユーザーフォームでテキストボックスを
> 作成してテキストボックス内で文字を記入してその文字を
> 変数aに読み込ませることは可能でしょうか。

何を聞きたいのかサッパリだ。
「この方法の他に」 の 「この方法」 が指しているのは 「テキスト ファイルの中身を変数 a に読み込む方法」 だろ?
で、質問したいのは 「テキスト ボックスの値を変数 a に読み込む方法」 だろ?
テキスト ファイルのくだりは関係あんの?

a = textbox1.text
っていう回答で合ってんの?

Qhtmlファイルからphpファイルへの値の受け渡し

表を使った問い合わせフォームを作成したのですが、データを受け渡す方法がわかりません!!

初めの問い合わせページは以下のようにhtmlファイルで記述しました。

この場合、次のページにデータを引き渡すphpファイルには、どうのような記述をしたら良いのでしょうか?

<form method="post" action="info.php">
<table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0">

<tr>
<td width="190" align="left" bgcolor="#FFF09D">お名前 <span class="tabletext1">※必須</span></td>
<td><input name="name" type="text" class="form01" id="name" /><br />
入力例:山田 太郎
</td>
</tr>

<tr>
<td align="left" bgcolor="#FFF09D">メールアドレス <span class="tabletext1">※必須</span></td>
<td><input name="mail" type="text" class="form01" id="mail" /><br />
入力例:●●●●●●@yamada.co.jp
</td>
</tr>

<tr>
<td align="left" bgcolor="#FFF09D">メールアドレス(確認) <span class="tabletext1">※必須</span></td>
<td><input name="mail2" type="text" class="form01" id="mail2" /></td>
</tr>

<tr>
<td align="left" bgcolor="#FFF09D">お問い合せ内容 <span class="tabletext1">※必須</span></td>
<td>
<select name="list" id="list">
<option>お問い合せ内容をお選びください</option>
<option>事業内容について</option>
<option>求人について </option>
<option>その他</option>
</select>
</td>
</tr>

<tr>
<td align="left" bgcolor="#FFF09D">内容 <span class="tabletext1">※必須</span></td>
<td><textarea name="content" id="内容" cols="45" rows="5"></textarea></td>
</tr>

</table>

<p align="center" class="margin01">
<input type="reset" value="クリア" />
<input type="submit" value="送信内容を確認する" />
</p>
<input type="hidden" name="test" value="cloud" />
</form>

表を使った問い合わせフォームを作成したのですが、データを受け渡す方法がわかりません!!

初めの問い合わせページは以下のようにhtmlファイルで記述しました。

この場合、次のページにデータを引き渡すphpファイルには、どうのような記述をしたら良いのでしょうか?

<form method="post" action="info.php">
<table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0">

<tr>
<td width="190" align="left" bgcolor="#FFF09D">お名前 <span class="tabletext1"...続きを読む

Aベストアンサー

ここが参考になりますかね。


http://www.phppro.jp/school/phpschool/vol6/1


postの処理をどう判定するのかどうか書いてあります。

若干異なるのは、質問者さんは次の画面で入力チェックを行いたいと言う事ですが、
参考サイトは遷移前で入力チェックを行っています。
入力するたびに次画面に遷移してエラーであれば戻ると言うのは
あまりよろしくないかと思いますが…。

Qvb2005でウェブページのテキストボックスに値を代入するには?

WebBrowser1.Document.All.Item("userName").Value = "xxx"

お世話になります。
以前のvbだとこれで代入できたのですが
valueプロパティがなくなっていて
代入できません。

どうすれば、vb2005からウェブページの
テキストボックスに代入できるのでしょうか?

教えてください。お願いします。

Aベストアンサー

>elementsがないんですよね。。。
指定されたアドレスを読んでみないと、formsやその内容のelementsは、作成されませんから、実行時になれば大丈夫だと思いますがね。

QHTML データ受け渡し

HTMLのデータ受け渡しをしたいのですが

例えば

・担当者_HTML

担当者選択
A        ←Aを選択(Aという値を年齢_HTMLに転送)


・年齢_HTML

年齢選択
20代     ←20代を選択(20代という値とBという値を実行ファイルに渡したい)
30代

Aベストアンサー

これだけのデーターだとすると、自作自演。

このような事をしたいと思うということは、この手の事をしていないと、この発想をしない。

とりあえず、候補を挙げておくが。

基本的なところから

http://reference.ascii.jp/html/form

ServerSideScriptを使う。POSTなのかGETなのかがポイント。

次にGETの応用

URL#HTML Object Element Name(ID)

これにイベント属性との組み合わせ。

JavaScriptなどを使った、ClientSideScriptで選択した結果を処理し、最後にFORMで送信。

ASPXやJSPなどを使えば、バインドしたHTMLタグを使える、

やり方は、さまざまあるので、基本的な事をまなんでから、何ができそうだから、何を使ってやる場合。などと、再度質問してください。

QVBAのテキストボックスに1未満の値のみが代入できるようにしたい

VBAのテキストボックスに1未満の値のみが代入できるようにしたいのですが


http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1414789174

このページを参考にして数値以外の代入の禁止を行った上で
以下のコードを試してみましたのですが
不審な挙動をしてうまくいきません。



Private Sub TextBox5_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

If (KeyAscii < Asc(0) And KeyAscii <> Asc(".")) Or KeyAscii > Asc(9) Then

KeyAscii = 0

End If


TextBox5.Text = Val(TextBox5.Value)


If Val(TextBox5.Value) >= 1 Then

TextBox5.Value = Val(1)

End If


End Sub



TextBox5.Text = Val(TextBox5.Value)
というところは例えば、「0.00..42」などのように複数のピリオドが代入された場合に
数値に変換するために入れています。

これを実行すると
なぜか13とか15とか1x系の数値しか代入することができません。

TextBox5.Text = Val(TextBox5.Value)

を外してみましたがやはりうまくいきませんでした。

どのように改良すれば良いでしょうか?

VBAのテキストボックスに1未満の値のみが代入できるようにしたいのですが


http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1414789174

このページを参考にして数値以外の代入の禁止を行った上で
以下のコードを試してみましたのですが
不審な挙動をしてうまくいきません。



Private Sub TextBox5_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

If (KeyAscii < Asc(0) And KeyAscii <> Asc(".")) Or KeyAscii > Asc(9) Then

KeyAscii = 0

End If


TextBox5.Text = ...続きを読む

Aベストアンサー

#6の内容で、コーディングしました。
以下のようにしてください
---------------------------------------------------
Private Sub TextBox5_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim ret As Integer
ret = check_data(TextBox5.text)
If ret < 0 Then
TextBox5.text = "0.999"
KeyAscii = 0
Exit Sub
End If
If ret = 0 Then
If KeyAscii <> Asc("0") Then
KeyAscii = 0
End If
End If
If ret = 1 Then
If TextBox5.SelStart = 0 Then
KeyAscii = 0
End If
If KeyAscii <> Asc(".") Then
KeyAscii = 0
End If
End If
If ret > 1 Then
If TextBox5.SelStart < 2 Then
KeyAscii = 0
End If
If KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then
KeyAscii = 0
End If
End If
End Sub


Private Function check_data(ByVal text As String) As Integer
check_data = Len(text)
If Len(text) = 0 Then
Exit Function
End If
If Len(text) = 1 Then
If text <> "0" Then
check_data = -1
End If
Exit Function
End If
If Len(text) = 2 Then
If text <> "0." Then
check_data = -1
End If
Exit Function
End If
If Len(text) >= 3 Then
If Mid(text, 1, 2) <> "0." Then
check_data = -1
End If
If IsNumeric(Mid(text, 3)) = False Then
check_data = -1
End If
Exit Function
End If
End Function
--------------------------------------------------------
又、0.234のような状態で
カーソルを0又は小数点の前に移動し、キーを押した場合は、無効となるように
しました。

#6の内容で、コーディングしました。
以下のようにしてください
---------------------------------------------------
Private Sub TextBox5_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim ret As Integer
ret = check_data(TextBox5.text)
If ret < 0 Then
TextBox5.text = "0.999"
KeyAscii = 0
Exit Sub
End If
If ret = 0 Then
If KeyAscii <> Asc("0") Then
KeyAscii = 0
End If
End If
If ret = 1 Then
...続きを読む

Q値の受け渡しについて

JavaScriptを使用しa.htmlからb.htmlへ
値の受け渡しについて分らない事があります。

やりたいことはa.html内にある
<a href="b.html">あああ</a>の「あああ」の値を
b.html内にある<INPUT>に入れたいのです。

現在記述しているコードを下記記しますので
何方かご教授お願いします。

■a.html
<html>
<a href="b.html" onclick="this.href=this.href+'?'+encodeURIComponent(this.innerHTML)">あああ</a>
</html>
■b.html
<html>
<script type="text/javascript">
query = decodeURIComponent( location.search.slice(1,1000) );
document.getElementById('in_name').value = query;
</script>
<form>
<INPUT type="text" id="in_name" name="in_name" value="">
</form>
</html>

JavaScriptを使用しa.htmlからb.htmlへ
値の受け渡しについて分らない事があります。

やりたいことはa.html内にある
<a href="b.html">あああ</a>の「あああ」の値を
b.html内にある<INPUT>に入れたいのです。

現在記述しているコードを下記記しますので
何方かご教授お願いします。

■a.html
<html>
<a href="b.html" onclick="this.href=this.href+'?'+encodeURIComponent(this.innerHTML)">あああ</a>
</html>
■b.html
<html>
<script type="text/javascript">
query = decodeURIComponent(...続きを読む

Aベストアンサー

document.getElementById('in_name').value = query;



window.onload=function(){
document.getElementById('in_name').value = query;
}

としてください

Q別スレッドからのフォームのテキストボックス参照(VB)

はじめまして、ひろです。
VisualBasicの初心者です。
メインスレッドから"BackgroundWorker"で、
別スレッドを作成し、別スレッドから
スタートアップフォームにあるテキストボックスを参照すると、
TextBox1.text="1" (メインスレッドからの参照の場合)
TextBox1.text=""(別スレッドからの参照の場合)
となり、別スレッドからですと"1"が参照ができません。
"1"を参照したい場合、もしくは書き換えたい場合
どのようにすればいいか、
わかる方がいましたら、教えてください。
よろしくお願いします。

環境:VisualBasic.NET 2008

Aベストアンサー

Delegateを使ってワーカーとメインの橋渡しをしましょう

フォームクラスに
Delegate Sub myGetText( ByRef sb as System.Text.StringBuilder)
Delegate Sub mySetText( ByVal ss as String)
を定義しておきます

バックグランドワーカーからTextBox1へのアクセスするために以下の2つを定義します

Public Sub GetText( byRef sb as System.Text.StringBuilder)
  if TextBox1.InvokeRequired then
    ' バックグランドワーカーから呼ばれた場合
    dim d as new myGetText(AddressOf GetText)
    invoke( d, new Object(){ sb } )
  else
    ' メインスレッドから呼ばれた場合
    sb.Append( TextBox1.Text )
  end if
End Sub

Public sub SetText( byVal ss as string )
  if TextBox1.InvokeRequired then
    ' バックグランドワーカーから呼ばれた場合
    dim d as new mySetText(AddressOf SetText)
    invoke( d, new Object(){ ss } )
  else
    ' メインスレッドから呼ばれた場合
    TextBox1.Text = ss
  end if
End If
といった具合です

呼び出し側のワーカースレッドでは
Dim sb as New System.Text.StringBuilder()
dim n as integer = 0
while n < 1000
  GetText( sb )
  n = sb.ToString
  n += 1
  SetText( n.ToString )
WEnd

Delegateを使ってワーカーとメインの橋渡しをしましょう

フォームクラスに
Delegate Sub myGetText( ByRef sb as System.Text.StringBuilder)
Delegate Sub mySetText( ByVal ss as String)
を定義しておきます

バックグランドワーカーからTextBox1へのアクセスするために以下の2つを定義します

Public Sub GetText( byRef sb as System.Text.StringBuilder)
  if TextBox1.InvokeRequired then
    ' バックグランドワーカーから呼ばれた場合
    dim d as new myGetText(AddressOf Get...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報