入力中の回答があります。ページを離れますか?※ページを離れると、回答が消えてしまいますページを離れるA回答を続ける入力中のお礼があります。VBAでマクロを作成しているのですが、セルが編集中の場合はボタンを押下できないようにしたいのです。EXCEL2000だと勝手にボタンが押下できない状態になっていますが、EXCEL2010だとボタンが押せてしまい困っております。ちなみにいろいろ調べたのですが、EXCEL2000ではセルが編集中かはわからないみたいです(私の調べ方が悪いかも知れませんが、、、)どなたがご教授願います。通報するこの質問への回答は締め切られました。2000ではシェイプ選択中、"書式設定"のコントロールが使用不可。編集」に関するQ&A:Excelの編集中ロックが解除されないお探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!全カテゴリから検索このカテゴリから検索Q質問する(無料)このQ&Aを見た人はこんなQ&Aも見ています大人のためのおしりトラブル座談会【PR】おしりの悩みといえば、痔を思い浮かべる方も多いのではないでしょうか。今回は、おしりトラブルに悩む女性3人が集まり座談会を開催しました。Basic(VBA)9Excel保護セルでダブルクリックを一時的に無効にする方法。Excel(エクセル)10エクセルVBAのフォームを最前面にする方法を教えてください。Basic(VBA)11フルパスから最後のディレクトリ名を取得したい。セル内の選択テキストの読み書きは?その他(プログラミング・Web制作)大人のためのおしりトラブル座談会【PR】おしりの悩みといえば、痔を思い浮かべる方も多いのではないでしょうか。今回は、おしりトラブルに悩む女性3人が集まり座談会を開催しました。Basic(VBA)9Excel保護セルでダブルクリックを一時的に無効にする方法。Excel(エクセル)10エクセルVBAのフォームを最前面にする方法を教えてください。Basic(VBA)11フルパスから最後のディレクトリ名を取得したい。Excel保護セルでダブルクリックを一時的に無効にする方法。回答数ランキングです。職業ビジネスアドバイザーこの専門家の回答をチェック他の専門家の回答をチェックこのQ&Aを見た人が検索しているワードセル編集中VBA判定マクロこのQ&Aと関連する良く見られている質問QExcelVBAでセルを編集状態にする方法VBAを使ってセルを編集状態にするコードについてお聞きします。"***"のように文字を入力すると元々入力してあった文字が消えてしまいます。次の文字列を入力するにはどのようにすればよいのでしょうか。セルを編集状態にして、入力文字列の最後の1文字を消す方法を教えてください。Aベストアンサー>セルを編集状態にして、入力文字列の最後の1文字を消す方法を教えてください。言葉から判断すれば、VBA上ではないと思います。オフにしないと、マクロ自体が動かないからです。別に、編集状態にはなっていません。する必要はありません。指定すればよいのです。With厳密に、「編集状態」=「入力待ち状態」から、編集をするマクロは、理論的にはありえないはずです。最初から、外部のプログラムに渡さないといけないわけですが、やったことはありません。他のプログラムで出来るとは思いますが、ここで書いても評価されないでしょう。手動で入力待ちを解除してから、マクロを稼働させればよいだけなのですから。>セルを編集状態にして、入力文字列の最後の1文字を消す方法を教えてください。言葉から判断すれば、VBA上ではないと思います。オフにしないと、マクロ自体が動かないからです。別に、編集状態にはなっていません。する必要はありません。指定すればよいのです。'文字を...続きを読む他の回答も見るQDoEvents関数って何?こんにちは。VBAやプログラミングに詳しい皆様に教えていただきたい質問があります。cells(1,1)からcells(5000,1)までの値を消去するときに処理の進行状況を表示するためにuserform上にプログレスバーを表示したいと思います。そこで下記のようなコードを入力しました。userform1しかしこれだとuserformの背景が真っ白になってしまいラベルの文字も消えてしまいます。userform1と入力すれば解決することがわかりました。システムに渡すフロー制御関数です。」と書いてあるのですが正直、書いてあることがよくわかりません。どなたかDoEvents関数について、もう少しわかりやすく教えていただけませんか。それから、最初に書いたコードで実行するとユーザーフォームの背景が真っ白になってしまう原因も教えていただけませんか?よろしくお願いいたします。VBAやプログラミングに詳しい皆様に教えていただきたい質問があります。cells(1,1)からcells(5000,1)までの値を消去するときに処理の進行状況を表示するためにuserform上にプログレスバーを表示したいと思います。そこで下記のようなコードを入力しました。userform1しかしこれだとuserformの背景が真っ白になってしまいラベルの文字も消えてしまいます。制御を渡すってことです。(ヘルプそのまんま)時間が掛かるループ処理などの場合、ループが終わるまで制御は独占されてしまいます。そのものにも再描画をさせる暇さえ与えません。溜まっていた処理をそこで行うことができます。結果、フォームの再描画などが行われることになります。イベントも動いちゃいます。有効に戻してください。ループを途中キャンセルする処理もすることができます。Subコードの行頭にあるスペースは見易さのために全角スペースで作成していますので、これをこのままコピペするとエラーになるかもしれません。コピペするなら行頭の全角スペースを半角スペースに直してください。制御を渡すってことです。(ヘルプそのまんま)時間が掛かるループ処理などの場合、ループが終わるまで制御は独占されてしまいます。そのものにも再描画をさせる暇さえ与えません。溜まっていた処理をそこで行うことができます。結果、フォームの再描画などが行われることになります。VBA】マクロでExcel自体を終了させたい環境:WindowsXP、Excel2003マクロでエクセルを終了(ブックを閉じて、アプリケーション自体も終了)させたいのですが、以下のコードではアプリケーションが閉じてくれません。ThisWorkbook.CloseExcObj.QuitApplication.Quitどこか悪いところはありますでしょうか?よろしくお願いします。普通に考えれば質問者のコードで上手くいきそうですがhana-hana3さんの回答にもあるようにThisWorkBook.Closeでコード終了となりますのでApplication.QuitをThisWorkBook.Closeの前にもってこないといけません。Application.Quitはそれがあるプロシージャのコードが全て終わるまでその実行を保留するちょと特別動作をします。VBAで業務を簡素化するために、現在開いているブックのファイル名を取得する方法が分かりません。作業手順をマクロを使って処理していますが、オリジナルのワークブックをファイル名を変えて保存し、以後、このワークブックを読み込んで使用しています。このときのVBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり、以後の業務に使用できません。常にファイル名を取得出来るVBAをどなたか、教えて下さい。操作対象になっているブックの名前はActiveWorkbook.Nameですね。>VBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになりというような文脈からすると、ThisWorkbook.Nameの方ですかね。ユーザーフォームを閉じるユーザーフォームを開く時はUserForm1.Showですが閉じる時は?UserForm1.Closeだとコンパイルエラーになります。ユーザーフォームを閉じることができます。オブジェクトが空かどうか判定する皆様のお知恵を拝借させてください。エクセルVBAでオブジェクトを入れる変数を定義し、その変数にオブジェクトが入っているかどうか検査したいのですがどうしたらいいでしょうか。←この部分が分からない。Then他の回答も見るQエクセルVBAのフォームを最前面にする方法を教えてください。他のどのウインドウをアクティブにしても消えない状態にしたいのですが、どのようなコードを書けばできるでしょうか。Trueとなると思うのですが、エクセルVBAだとそのような書き方はないようです。もうしわけございませんがご教示頂きたく、お願いいたします。m(__)mAベストアンサーあらかじめ、フォームのプロパティの[ShowModal]をFalseにしておいて、以下のような方法ではダメでしょうか?画面のアクティブイベントを利用するのは、個人的に嫌いなのですが。Subあらかじめ、フォームのプロパティの[ShowModal]をFalseにしておいて、以下のような方法ではダメでしょうか?画面のアクティブイベントを利用するのは、個人的に嫌いなのですが。rangeメソッドは失敗しました。始めまして、VBA初心者のものです。ただいまエクセルでグラフを作成しています。作業自体は単純作業の繰り返しなのでVBAを用いてやりたいのですが、マクロを実行したときに実行時エラー’1004’rangeメソッドは失敗しました。’_global’オブジェクトとメッセージが出て、実行できません。デバックをすると以下の5行目で黄色のバーが出ていました。自分なりに原因を考えたのですがrangeの関係するところに、Range("A8:A1587,e8:e1587")というような変数を用いないやり方でやると上手くいくので、変数に関する定義がまずいと思うのですが、それ以上の事は分かりません。どなたか、分かる方がおりましたら、よろしくお願いします。プログラムは以下のようになります。Sub始めまして、VBA初心者のものです。ただいまエクセルでグラフを作成しています。作業自体は単純作業の繰り返しなのでVBAを用いてやりたいのですが、マクロを実行したときに実行時エラー’1004’rangeメソッドは失敗しました。’_global’オブジェクトとメッセージが出て、実行できません。デバックをすると以下の5行目で黄色のバーが出ていました。自分なりに原因を考えたのですがrangeの関係するところに、Range("A8:A1587,e8:e1587")というような変数を用いないやり方でやると上手くいくので、変数に関する定義...続きを読むAベストアンサー>ご指摘を受けたところを書き換えて回してみた結果、書き換えた箇所>でエラーがでます。(実行時エラー’1004’’cells’メソッドは失敗>しました。’global’オブジェクト)>しかし、何が原因でエラーになるか自分では分かりません。2)).Select上記の例では、RangeとかCellsの上位オブジェクトであるシート名が省略されています。2)).Selectというわけです。マクロ実行時に、Activeな(Excelで表示されている)シートが上位オブジェクトとして、自動的に認識されます。2)).Select上記の例では、Rangeのみシート名が記述されています。2)).Selectというわけです。Activeなシートが、Sheet2の場合はエラーになりません。ActiveなシートがSheet2以外の場合、エラーが発生します。直前に、Sheets("Sheet1").Selectなどとしていれば、ActiveシートがSheet1になっていますから、エラーになります。2)).Selectと書いておけば安心です。Withステートメントを使えばスッキリ纏めることができます。Sheets("Sheet2")の上位オブジェクトが省略されていることにも気がついてください。>そこで自分で基礎を勉強したいのですが推薦できる参考書などがござ>いましたら、教えていただけませんか?私自身は、入門書程度の雑誌を1冊買っただけです。どれが良いとかはよく分かりません。「マクロの記録」を活用して、参考コードを取得し、汎用性のあるコードに編集しています。新しい単語があれば、文字カーソルを単語の上に置き、F1キーを押してVBAのヘルプを必ず見るようにしています。躓いた時は、Web検索して欲しい情報を得たり、あるいは、こうした掲示板で先輩方のお力をお借りしています。Excel(エクセル)VBA入門:目次http://oshiete1.goo.ne.jp/kotaeru_reply.php3?q=4651404エクセル入門・初級編http://www.kenzo30.com/excel_kiso.htm>ご指摘を受けたところを書き換えて回してみた結果、書き換えた箇所>でエラーがでます。(実行時エラー’1004’’cells’メソッドは失敗>しました。’global’オブジェクト)>しかし、何が原因でエラーになるか自分では分かりません。2)).Select上記の例では、RangeとかCellsの上位オブジェクトであるシート名が省略されています。2)).Selectというわけです。workbooks・・・Nextで現在開いているexcelのブック名をすべて取得することができますが、2つめのexcelを起動し、そこで開いたブック名は取得することができません。プロシージャは個人用マクロブックに記載しているのですが、複数起動したexcelのすべてのブック名を取得する方法をどなたかご存知の方いませんでしょうか?excel2007を使用しています。ファイルを作成され、特定の場所に保存されている。表示は、そのファイルを開いているにすぎない。画面で表示されるが、ファイルには書き出されていない。オブジェクトは参照できますよ。2)の場合は、厄介です。他の回答も見るQExcelVBA実行後に時々落ちるVBA初心者です。調べてみましたが、どうしても原因が判りません。Excel2007Windows7実行後時々Excelが落ちてしまいます。ID:1041この問題に関する追加情報:LCID:1041Brand:Office12Crashskulcid:1041*****************************以下のVBAに問題があるのでしょうか?内容は「フォームのテキストに数字を入力し、入力した回数繰り返す」というものです。Sub**********************************入力用のシートで入力した内容を他のシートにためていくものです。以下の内容を標準モジュールに書いています。"アクティブセルが日付にありません。SubExcelが落ちるのはこれを実行した後のみ時々起きますので私が作成した内容に何か問題があるのだと思うのですが調べても判りません・・・・この内容で情報は足りるでしょうか?よろしくお願いします。調べてみましたが、どうしても原因が判りません。Excel2007Windows7実行後時々Excelが落ちてしまいます。エラーの内容***************************問題の署名:問題イベント名:APPCRASHアプリケーション名:EXCEL.EXEアプリケーションのバージョン:12.0.6661.5000アプリケーションのタイムスタンプ:4f7cda6d障害モジュールの名前:EXCEL.EXE障害モジュールのバージョン:12.0.6661.5000障害モジュールのタイムスタンプ:4f7cda6d例外コー...続きを読むAベストアンサーこんにちは。確実にコンパイルエラーになる間違いです。型というのは、バイナリデータのやり取りに使う為のものですからこういう使い方をするものではありません。