• 締切済み
  • 困ってます

REFEDITで起こるEXCELVBA のバグ?

フォームにREFEDITコントロールを貼り付け、ワークシートから 列の値のみ(A列、B列)を取得し、利用するということを やろうとしてます。 が、ブレークポイントを設定してもREFEDITの例えばCHENGEイベントの個所は実際の画面上では動作しているのに、ブレークポイントが反応しません。 (ごくまれに反応することもある。初歩的なミスなんかでは断じてないです。)そして、よく"落ちる"のです。 必ずしもREFEDITの動きで落ちるのではなく、他のBUTTONが無効になってしまったりします。REFEDITが間違いなく怪しいです。なければ他は正常な動きですから。 もしや、REFEDITには固有のバグでもあるのでしょうか? もしご存知の方がいらっしゃいましたら、教えて下さい。 2台のPC(共にWIN98)で、EXCEL97と2000の両方で試しました。再インストールもしましたがだめでした。 ※もし、この内容では情報不足の場合お知らせ下さい。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数746
  • ありがとう数17

みんなの回答

  • 回答No.2
  • ARC
  • ベストアンサー率46% (643/1383)

さっき、SR-1を導入して試してみましたが、フリーズもどきにはならなくなりました。 相変わらずブレークポイントは利きませんが、この程度の障害であれば実用になるんではないかと思います。 ちなみに先日とは環境が異なり、Win98での実験でした。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

返事が遅くなってすみません。 周りの何人かにも聞いてみたのですが、 皆一様にバグだろうとのこと。○icrosoft製品だからって。(笑) SR-1なら大丈夫そうですか。 記述をしなかったのですが、作ったツールを不特定多数の人(環境:Excel97 or 2000)が使う予定なので、残念ですがやはり現状の使用法(CHENGEイベント)はやめて、他の方法を試してみたいと思います。(CommandButtonクリックでRefEditのTextの内容を変更させる等。)  いい勉強になりました。 いろいろと調べていただき、ありがとうございました。

関連するQ&A

  • 長時間の計算のときだけバグになる?[ExcelVBA]

    ExcelVBAでシミュレーションの計算をさせています。 for nextでループさせながら12時間くらい計算→ブック保存→PCシャットダウン、という流れです。 仕事場でプログラムを走らせてから帰宅し、翌朝チェックしてみるとなぜか計算結果が保存されていません(ちゃんとマクロは走り始めています)。 アルゴリズムは変えないまま、step数を大きくし、短い時間で計算が終わるようにしてテストしてみると上手く保存されています。ところが、これだと計算が粗いので仕事になりません。 このような状況はなぜ起きるのでしょうか(プログラムが原因?ハードウェアが原因?)? また、防ぐにはどうしたら良いでしょうか?

  • ExcelVBA 2列ずつ取り出し1列に

    お世話になります。 Excelで、あるデータを整理せねばならないのですが、 A列にID番号、B列に人名、 C列にID番号、D列に人名、というようなデータがあり このような状態です。 0001 山田花子      0002 田中太郎 これをA列に縦1列、つまりこのような状態にしたいのです。 0001  山田花子 0002 田中太郎 量が多くて、手で処理できないので、VBAでやりたいのですが、 この場合どのようなコードになるでしょうか。 教えていただければ幸いです。

  • ExcelVBAで・・・

    お世話になります。 この度、ExcelVBAでデータベースシステムを作ることになりました。 そこで、ファイルにパスワードを設定するVBAを作成したいのですがどうやっていいのかわかりません。 手順として、 (1)初期パスワードを設定する(TextBoxに入力してもらう) (2)そのパスワードがないとファイルを見れないようにする。 なのですが、そのTextBoxに入力したパスワードをどこに保存?したら良いのかが良くわかりません。 セル内に入れておいても見られそうな気がして…。

  • 回答No.1
  • ARC
  • ベストアンサー率46% (643/1383)

私のところ(Win2K + Office2K)でも同様です。おそらくバグでしょう。 Office2000 SR-1の改良項目の一つに、「イベントを開始する ActiveX コントロールを適切に管理できるようになりました。」とありますので、ひょっとしたらSR-1にて修正されているのかもしれません。 自宅のPCにはまだ未導入ですので、実際に直っているのかどうかは確認できませんでした。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • ExcelVBAで出来ますか?

    2つの表で比較し、両方の表になかった時に、その行を抜き出したいと思っています。 どのようにしたら、良いでしょうか? 表A                 表B  大グループ  小グループ      大グループ  小グループ   い. 100      1         100      1  ろ. 100      2         100      2  は. 100      3         100      3  に. 110      1         110      1  ほ. 110      2         110      2  へ. 110      3         110      3  ち. 111      2         111      2  り. 111      3         111      3   上記のように、大グループがあって、その下に小グループがぶらさがっているのですが、両方の表に、111 1 の組み合わせがありません。 この時に、Excelの同じブックにある別シートに、「111 1」と 書き出したいのですが、出来ますでしょうか? 難しい方法でなくても、「111 1」が抜けていることが分かるには、 どうしたらいいですか?マクロ又は、関数を教えてください。 関数で出来れば有り難いです。 よろしくお願い致します。 

  • ExcelVBAで

    EXCEL VBAの開発をしております。 標準モジュールから、シート内のコンボボックスやテキストボックスに値を書き込みたいときは、 プログラム上、どのように書けばよいのでしょうか? シート内のモジュールなら、ダイレクトにオブジェクト名を書けますが。 すみません、初心者なもので・・・。

  • ExcelVBA 教えてください。

    お世話になります。 今、ExcelVBAを使って、Accessのテーブル・フィールド情報を列挙するプログラムを作っているのですが・・・↓ ****************************************************** Public Function テーブル_フィールド情報取得関数 As Boolean Dim DB As DAO.Database Dim Tableloop As DAO.TableDef Dim Fld As DAO.Field Dim Tdf As DAO.TableDef   'DBオブジェクトを作成 Set DB = DBEngine.Workspaces(0).OpenDatabase("TESUTO.mdb") 'テーブルの数だけ処理をループ For Each Tableloop In DB.TableDefs Set Tdf = DB.TableDefs(Tableloop.Name) 'フィールドの数だけ処理をループ For Each Fld In Tdf.Fields '「フィールド名」取得 Debug.print Fld.Name '「フィールド型」取得 Debug.print Fld.Type '「フィールドサイズ」取得 Debug.print Fld.Properties("Size") '「主キー」取得 Debug.print Fld.Properties("Primary") '「インデックス重複許可」取得 Debug.print Fld.Properties("Indexed") Next Fld Next Tableloop End Function ****************************************************** ↑どうしても最後の「主キー」と「インデックスの重複許可」の情報を得ようとするとエラーが出てしまいます(:;)。 Excel2000VBA→Access2000[mdb]取り込み→最終的にExcelのシートに、テーブル・フィールド情報を出力。 ↑といった流れになるのですが、フィールドが主キーかどうか簡単に調べる方法無いでしょうか?現在はDAO3.6を参照設定しております。 どなたかご教授ください。

  • EXCELVBAに詳しい方教えてください。

    Workbooks.Open FileName:=.FoundFiles(iCount), UpdateLinks:=0 を実行した時に、該当ファイルが既に開かれていた場合、マクロが停止してしまいます。 エラートラップを行ないたいのですが、エラー番号が表示されません。どのようにしてフックさせればいいのでしょうか? また、繰返し複数のファイルを開く場合で、2重に開こうとしたファイル名を記録しておく(セルに書き込んでもいい)には、Notifyが関係ありますか? さらに、VBAEで、エラーの一覧って見ることが出来るのでしょうか? 初歩的な質問で恐縮です。宜しくお願い致します。

  • ExcelVBAの詳しい方教えてください。

    下のマクロが書かれているエクセルファイルがあるフォルダー内のエクセルファイルを全て印刷するマクロを組んだつもりですが、上手く動きません。 結構悩んだのですが、自力で解決できそうに無いので、どなたか?助けていただけないでしょか? 宜しくお願いいたします。 If .ExecuteSortBy:=msoSortByFileName,SortOrder:=msoSortOrderAscending) > 0 Then   For icount = 1 To .FoundFiles.Count Workbooks.Open FileName:=.FoundFile(icount) ActiveSheet.PrintOut ActiveWindow.Close savechanges:=False Next icount Else MsgBox "検索条件を満たすファイルはありません。" End If

  • ExcelVBAで。

    こんばんは。 前回の質問で教えて戴いたのですが、またわからない事が出てきたので教えてください。 Sub Test() With ActiveSheet .Range("K3", .Range("K65536").End(xlUp)).Interior.ColorIndex = 35 End With End Sub として、K3から同じ列の最終入力セルまでを選択して、色をつけるという状況になっています。 このときに、入力のないセルの場合でもセルに枠がついていたら、そこまで選択をしたいのですが、無理なのでしょうか?

  • ExcelVBA どこが間違えていますか?

    ExcelVBA 初心者です。 下記のようなプロシージャを人様の作ったのをコピーして作ったのですが意図したとおりになりません。どこが間違っているのか教えてください。 私の意図は選択したフォルダの中の全ファイル(Book)名をアクティブシートのA列に順番に表示したい、です。今は実行すると全部セルA1に表示されてしまって、最後の1つのファイル名しか分かりません。ファイルごとに別のセルに表示したいのです。よろしくお願いします。 Sub ファイル一覧() Dim foldername As String Dim filename As String Dim i As Integer Dim dlg_folder As FileDialog Set dlg_folder = Application.FileDialog(msoFileDialogFolderPicker) Folder_Dialog: dlg_folder.Show If dlg_folder.SelectedItems.Count <> 1 Then Exit Sub Else foldername = dlg_folder.SelectedItems.Item(1) MsgBox "選択したフォルダは " & foldername & " です。" filename = Dir(foldername & "\*.xls", vbNormal) If filename = "" Then MsgBox "Excelファイルがありません。" GoTo Folder_Dialog End If End If Set dlg_folder = Nothing Do While filename <> "" For i = 1 To Workbooks.Count Cells(i, 1).Value = filename i = i + 1 Next i filename = Dir() Loop MsgBox "フォルダ " & foldername & " の中のファイルはすべて表示されました。" End Sub あれ、なぜかインデントが無効になっています。

  • ExcelVBA

    すいません。簡単なことなのかもしれませんが、困っています。 普段C++を使用して仕事をしているのですが、急遽ExcelVBAを使用してExcelのマクロを作成しなければならなくなりました。 VisualBasicはまったく触ったことないので質問させていただきます。 Excelファイルの保護されていないセルの行数と列数を数えたいのです。 ExcelVBAで記述するとどういったコードになるのでしょうか? ちなみにExcel2007を使用しています。 皆さんの知恵をお貸しください。

  • ExcelVBAで

    お世話になってます。 ExcelVBAのSelect Caseについての質問です。 例えば、 Select Case 得点 Case Is>=80 評価="優" Case Is>=70 評価="良" ・ ・ ・ とあります。 ここで、条件の80以上というのを決まった値ではなくセルの値としてできないのでしょうか?例えばDの列の値を条件として設定できないのでしょうか? また、評価="優"というのも、決まった値ではなくEの列といったようにできないのでしょうか? 教えて下さい。

  • ExcelVBAで

    ExcelVBAで、Excelファイルを保存するダイアログを表示し、指定パスにファイル名を指定して保存したいのですが、 保存ダイアログが開いた際に、デフォルトでパスを指定しておくことは可能なんでしょうか?(プログラム上で)