今だけ人気マンガ100円レンタル特集♪

エクセル2007で、Application.Runを使って、他のブックの関数を使用しようとしたところ、実行時エラー「このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。」が出ます。以下のサイトの情報を実行してみても解決できませんでした。

http://soumukouboo.blog91.fc2.com/blog-entry-107 …
http://www.katch.ne.jp/~kiyopon/soft/2007.html

エクセル2007では、ブックを開くとマクロは強制的に無効にされることは分かったのですが、信頼できる場所を登録しても、上記エラーが出て実行できません。

エクセル2007でApplication.Runをどうすれば実行できるでしょうか?

ちなみに「他のブック」は同じフォルダに置いてあり、

next_book="test.xls"
Workbooks.Open (ThisWorkbook.Path & "\" & next_book)

という感じで、最初に次のブックを立ち上げています。

目的は、1というBOOKの処理が終わったら、次のブックを自動で立ち上げて、次のブックの処理スタート
ボタンを自動で押したいというものです。

よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

>エクセル2007でApplication.Runをどうすれば実行できるでしょうか?


別に、Excel2007 でも、前のバージョンでも変わりません。

質問全体としては、分からない部分がいくつかあります。

なぜ、肝心な部分のコードを書かないで質問されているのか良く分かりません。

>next_book="test.xls"
>Workbooks.Open (ThisWorkbook.Path & "\" & next_book)

Excel 2007 で、旧xls ファイルを呼び出すのでしょうか?
仮に、そうであっても、開けば、
Application.Run で呼び出せるはずです。

>目的は、1というBOOKの処理が終わったら、次のブックを自動で立ち上げて、次のブックの処理スタートボタンを自動で押したいというものです。

しかし、ボタンの種類にもよりますが、Active X コントロールのボタンを、呼び出し処理は出来ないはずです。Private ステートメントが付いているはずです。それを外せばよいのですが、そんなことは、あまりしませんね。だいたい、こういう場合は、Application.Run で実行させることなどありません。

あまり凝ったことをせずに、別のブックにコードを置いて、処理するのが良いのではないかと思います。
    • good
    • 0
この回答へのお礼

説明用にサンプルプログラムを作ろうとおもったら、ソチラでは動きました。

メインのプログラムがなぜ実行時エラーが出るのかはわからないままですが、確かにおっしゃる通りエクセル2007が問題ではないようです。

とりあえず、Application.Run を使わず、次のBOOKのオープンイベントで処理を開始するようにして
対応しました。

なお、xls形式を使っている理由はファイルを配布するからです。エクセル2007形式では読み取り出来ない方も居られますので。

ご回答ありがとうございました。

お礼日時:2010/08/05 20:31

2007で無いですが、何か参考になれば。


XXX.xlsのModule1に
Sub test02()
UserForm1.Show
End Sub
があります。
このブックをまず開いておく。
ーーー
他のブックを開いて(新規ブックBook1。保存前)、標準モジュールに
Sub test01()
Application.Run "xxx.xls!Module1.Test02"
End Sub
を入れて
、実行すると、UserForm1が現れ、ボタンをクリックすると、クリックイベントの
Private Sub CommandButton1_Click()
MsgBox "SSS"
Workbooks("Book1").ActiveSheet.Range("A1") = "xxxx"
End Sub
を入れていますが、所定の処理が実行されましたが。
(Module1の限定を入れてますか。Module2などに同名のプロシ名がある場合)
    • good
    • 0
この回答へのお礼

アドバイスありがとうございました。

マクロが無効になってしまう原因はわからないままですが、別の方法で対応しました。

ちょっと不思議な現象ですが、ファイルを作りなおすと現象が治りそうな気がします。

いろいろ調べてみます。

お礼日時:2010/08/05 20:33

このQ&Aに関連する人気のQ&A

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

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

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

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

Qマクロが実行できません

マクロを実行すると以下のエラーが表示されます
---------------------------------------
実行時エラー'1004':
マクロ一覧作成.xlsm'!日付取り込み"を実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。
---------------------------------------

「デバッグ」をクリックすると、以下の箇所が黄色でハイライトされます。
---------------------------------------
Sub まとめて実行()
Application.Run "'一覧作成.xlsm'!data00取り込み"
Application.Run "'一覧作成.xlsm'!data01取り込み"
Application.Run "'一覧作成.xlsm'!data02取り込み"
Application.Run "'一覧作成.xlsm'!data03取り込み"
Application.Run "'一覧作成.xlsm'!data04取り込み"
Application.Run "'一覧作成.xlsm'!data05取り込み"
Application.Run "'一覧作成.xlsm'!data06取り込み"
Application.Run "'一覧作成.xlsm'!data07取り込み"
Application.Run "'一覧作成.xlsm'!data08取り込み"
Application.Run "'一覧作成.xlsm'!data09取り込み"
Application.Run "'一覧作成.xlsm'!data10取り込み"
Application.Run "'一覧作成.xlsm'!data11取り込み"
Application.Run "'一覧作成.xlsm'!data12取り込み"
Application.Run "'一覧作成.xlsm'!data13取り込み"
Application.Run "'一覧作成.xlsm'!data14取り込み"
Application.Run "'一覧作成.xlsm'!data15取り込み"
Application.Run "'一覧作成.xlsm'!data16取り込み"
Application.Run "'一覧作成.xlsm'!data17取り込み"
Application.Run "'一覧作成.xlsm'!data18取り込み"
Application.Run "'一覧作成.xlsm'!data19取り込み"
Application.Run "'一覧作成.xlsm'!data20取り込み"
Application.Run "'一覧作成.xlsm'!日付取り込み"    <-----ここが黄色になります
Range("a265").Select
End Sub
---------------------------------------

黄色でハイライトされたマクロの中身は以下の通りです。
---------------------------------------
Sub 日付取り込み()
'
Sheets("data00").Select
Range("a2:a400").Select
Selection.Copy
Sheets("一覧").Select
Range("a4").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("a258").Select
End Sub
---------------------------------------
他のマクロ(「一覧作成.xlsm'!data01取り込み」など)は実行できるのに、最後の
「一覧作成.xlsm'!日付取り込み」のところでエラーになるようですが、どうして
エラーになるのか分かりません。どうか教えていただけないでしょうか。
よろしくお願いいたします。

マクロを実行すると以下のエラーが表示されます
---------------------------------------
実行時エラー'1004':
マクロ一覧作成.xlsm'!日付取り込み"を実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。
---------------------------------------

「デバッグ」をクリックすると、以下の箇所が黄色でハイライトされます。
---------------------------------------
Sub まとめて実行()
Application.Run "'一覧作成.xlsm'!data00取り込み"
A...続きを読む

Aベストアンサー

コード自体には特に問題点はないと思われます。

「一覧作成.xlsm」ブックの一行目辺りで、ブレークポイントの設定を行って、「日付取り込み」マクロの具体的にどの辺でエラーになっているのか、確認したほうがいいでしょう。

あと、以下のような現象もあるので、全角マクロ名は避けたほうがいいかもしれません。
http://support.microsoft.com/kb/2297924/ja

QエクセルVBA 「Application.Run」について

職場のエクセルファイルに以下のようなコードがあります。
これはブック内の○○というマクロを実行するという意味でしょうか?
(実際は~~部分に多くのコードがあり、上記のことが正しいのかよくわかりません)
Sub test()
~~
Application.Run "ThisWorkbook.○○"
~~
End Sub
以上、よろしくお願いします。

Aベストアンサー

こんにちは。

こういうのは、ほとんど、みなさん、見よう見まねだと思いますし、分からずに使っているものだと思います。以下を見ても区別は付かないと思いますが、基本的には、自ブック(ThisWorkbook)に対して、「Application.Run "ThisWorkbook.○○"」このようなコードは書きません。

Call がよいとか、どうかは、その状況によります。ただ、基本ですと、Excelの場合は、標準モジュールから、ThisWorkbook のコードは呼び出すことはありません。必要なら、両方とも、標準モジュールに書き込みます。ThisWorkbookは、ローカルオブジェクトを持っていますから、特別な働きを持たすコードでなければ、そこに書きません。

プロシージャのTest_A ~ Test_C までの中で、Test_C は、通常、このようには書きません。

同じプロシージャの Test1 ~Test3で、Test1とTest2 は、呼び出し側から、値渡し・参照渡しがコントロールできますが、Call で呼び出した場合は、呼び出される側で値渡し・参照渡しが決められます。

だから、Call を使うことが多いことになろうかと思います。

'-------------------------------------------
'標準モジュール
Sub Test_A()
 
 Call ThisWorkbook.myTest1

End Sub
Sub Test_B()
 
 ThisWorkbook.myTest1

End Sub
Sub Test_C()
 
 Application.Run "ThisWorkbook.myTest1"

End Sub
'-------------------------------------------
'標準モジュール
Sub Test1()
Dim n
 '参照渡し
 ThisWorkbook.myTest2 n
 MsgBox n
End Sub
Sub Test2()
Dim n
 '値渡し
 ThisWorkbook.myTest2 (n)
 MsgBox n
End Sub

Sub Test3()
Dim n
 Call ThisWorkbook.myTest2(n)
 MsgBox n
End Sub

'-------------------------------------------
'ThisWorkbook モジュール
'-------------------------------------------
Sub myTest1()
 MsgBox Time
End Sub
Sub myTest2(arg As Variant)
 '参照渡し(デフォルト)
   arg = Time
End Sub

こんにちは。

こういうのは、ほとんど、みなさん、見よう見まねだと思いますし、分からずに使っているものだと思います。以下を見ても区別は付かないと思いますが、基本的には、自ブック(ThisWorkbook)に対して、「Application.Run "ThisWorkbook.○○"」このようなコードは書きません。

Call がよいとか、どうかは、その状況によります。ただ、基本ですと、Excelの場合は、標準モジュールから、ThisWorkbook のコードは呼び出すことはありません。必要なら、両方とも、標準モジュールに書き込みます。ThisWo...続きを読む

QEXCEL VBA で現在開いているブックのファイル名を取得する方法

EXCEL2003 VBAで業務を簡素化するために、現在開いているブックのファイル名を取得する方法が分かりません。
作業手順をマクロを使って処理していますが、オリジナルのワークブックをファイル名を変えて保存し、以後、このワークブックを読み込んで使用しています。
このときのVBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり、以後の業務に使用できません。
常にファイル名を取得出来るVBAをどなたか、教えて下さい。

Aベストアンサー

>現在開いているブックのファイル名
 ちょっと曖昧な表現かなぁという気もいたしますが、VBAが書いてあるブックのブック名は
ThisWorkbook.Name
で、現在 "アクティブにして" 操作対象になっているブックの名前は
ActiveWorkbook.Name
ですね。

 しかし、
>VBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり
というような文脈からすると、
ThisWorkbook.Name
の方ですかね。

Qエクセル マクロ実行時エラー’1004’

For~Next構文内でシートコピーしていると途中で、
実行時エラー'1004’
WorksheetクラスのCopyメソッドが失敗しました。
が表示されることがあります。

該当のFor~Next文は10回以上実行されているので、コードの誤りではないと思うのですが、なぜ「Copyメソッドが失敗」するのかわかりません。
理由/対処方法がわかればありがたいと思い質問させていただきます。

**該当コード**
Sub 評価シート作成()
  Sheets(社員一覧).Select
  行 = 1
  Do
    ReDim Preserve 社員CD(行)
    ReDim Preserve 氏名(行)
    社員CD(行) = Cells(行 + 1, 1).Value
    氏名(行) = Cells(行 + 1, 2).Value
    行 = 行 + 1
  Loop Until Cells(行, 1) = ""
  人数 = 行 - 2
  For 回数 = 1 To 人数
    Sheets(評価シート).Select
    Sheets(評価シート).Copy after:=Sheets(評価シート)
    ActiveSheet.Name = 氏名(回数)
    Cells(4, 5) = 氏名(回数)
    Cells(4, 3) = 社員CD(回数)
  Next 回数
End Sub
*****************************
よろしくお願いします

For~Next構文内でシートコピーしていると途中で、
実行時エラー'1004’
WorksheetクラスのCopyメソッドが失敗しました。
が表示されることがあります。

該当のFor~Next文は10回以上実行されているので、コードの誤りではないと思うのですが、なぜ「Copyメソッドが失敗」するのかわかりません。
理由/対処方法がわかればありがたいと思い質問させていただきます。

**該当コード**
Sub 評価シート作成()
  Sheets(社員一覧).Select
  行 = 1
  Do
    ReDim Preserve 社員CD(行)
   ...続きを読む

Aベストアンサー

ひょっとしてこれに該当するのかな?

Excel でプログラムを使用してワークシートをコピーするとランタイム エラー 1004 が発生する
http://support.microsoft.com/kb/210684/ja

Qエクセルのマクロで別ファイル(エクセル)のマクロを実行させるには?

エクセルにおいてマクロを組んでいます.

1.実行させたいマクロAが組んであるファイル(Aファイルとします)が多数あります。またマクロAはモジュール内(Module1)に作っております。
2.1のマクロAを別のエクセルファイル(Bファイルとします)のマクロBで実行させたい.

上記のようなことを行いたいのですが可能でしょうか?さらに言えば、マクロBによってマクロAのプロシージャを指定して実行させることは出来るでしょうか?
現在は、マクロBによってマクロAを組んであるAファイルを開き、Aファイルのマクロの中にファイルを開いたときにマクロAを実行させる(イベントドリブン)ようにしています.
直接、マクロBでAファイルのマクロAを動かせるようになればマクロAにイベントドリブンなコードを組む手間がなくなるので、なんとかそのような事が出来ないでしょうか?

どうか、詳しい方ご教授ください。
よろしくお願いいたします。。。

Aベストアンサー

回答2、myRangeです。
 
>実は、マクロAは複数のサブプロシージャがあり、メインプロシージャ(メインルーチン)から必要に応じてサブプロシージャ(サブルーチン)を呼び出す(Call)構造をしています。
>つまり、やりたいことはマクロBからマクロA内のサブプロシージャ(サブルーチン)を動作させたかったという意味でした。

質問者はちょっと勘違いしているようですね。
マクロAもプロシージャであり、Callされるのも同じプロシージャーです。
質問者がメイン、サブと呼んでいるだけで、それらは個々のプロシージャですから

例えば、マクロAからCallしている MacroAAA を実行させたければ
 
Application.Run "別ブック.xls!MacroAAA"

とそれを指定してやるだけです。
 

QSub ***( ) と Private Sub ***( ) の違い

初歩的な質問で申し訳ありませんが・・・

自分でコードを書いていても、イベントが発生したりした時の処理で、コードのウィンドウで上のドロップダウンリストで選択できる時の処理などは自動的に[Private Sub Command1_Click( )]などと出てくるのでそのまま使っています。自分で別途プロシージャーを作成する時は[Sub ****( )]としています。
ですがその違いを理解しないまま、自分で作成する時は[Private Sub]ではなくて[Sub]を使っています。

Sub ***( ) と Private Sub ***( ) の違いは何なんでしょうか?
どなたか説明頂けませんか?
よろしくお願いします。

Aベストアンサー

「Sub」の部分にカーソルを置いて[F1]を押せばヘルプが起動します。
「指定項目」のところに「Public」と「Private」の説明がありますよ。
省略して「Sub hogehoge()」とした場合は「Public」とみなされます。

Publicは「すべてのモジュールから呼び出せるプロシージャ」ということになります。
Privateとすると「同じモジュールの中からしか呼び出せないプロシージャ」となります。

もしExcelをお持ちでしたらExcelのVBEで標準モジュールを追加し、「Sub Test1()」と「Private Sub Test2()」を作成してみてください。
そしてExcelの[ツール]-[マクロ]-[マクロ(Alt+F8)]でマクロ実行のダイアログを表示させてみるとわかります。
ここには実行できるプロシージャの一覧が表示されますが、Test1は表示されているけれどTest2は表示されません。
Test1はPublicで、Test2はPrivateだからです。

QメッセージボックスのOKボタンをVBAでクリックさせたい

EXCELの1つのブックに2つのマクロを組んでいます。

普段は1つ目のマクロを実行したあと、処理結果を確認してから
2つ目のマクロを動かしています。

※1つ目のマクロ終了時に、完了のメッセージボックスが出ます。



この2つのマクロを、自動で処理するためのマクロを
作ろうとしていて、

1.1つ目のマクロを実行
2.処理完了のメッセージボックスのOKをクリック
3.2つ目のマクロを実行

という流れで処理しようと思っています。


今、メッセージボックスのOKボタンをVBAでクリックする方法がわからなくて
調べているのですが、お分かりになる方いらっしゃいましたら
教えていただけませんでしょうか。



例えば、1つフラグを作って、そのフラグが立っている時は
メッセージボックスを出さないような制御は出来るのですが、
今回は、メッセージボックスをクリックする方法が
知りたいと思っています。


よろしくお願いいたします。

Aベストアンサー

無理です
MsgBox自体がモーダルで表示されるので MsgBoxからExcelへ処理が戻ってこない限りExcelからの制御が不能になります

フラグを作って MsgBoxの表示、非表示を切り替えるほうが現実的です

QVBA(エクセル)で自動的にボタンをクリックさせるには

いつもお世話になっております。
下記のことがしたいのですがどうやって良いのかがわからなくって困っております。

やりたいこと。
AブックとBブックが有るとします。(双方ともエクセルファイル)
エクセルのVBAで、Aブックのシート上のコマンドボタンを押すと
Bブックのシート上のコマンドボタンをクリックするという動きを
VBAでさせたいのですがどうしてもクリックさせることができません。

試したこと。
初めは、AのボタンをクリックするとBのボタンをセレクトして
SendKeysでENTERを送ってみたりしたのですがうまくいきませんでした。

何かやり方が有りましたら、お教えいただけませんでしょう。
宜しくお願いいたします。

Aベストアンサー

Privateスコープを変更しない場合、Application.Runメソッドを使う手もあります。
Application.Run "'C:\Book1.xls'!Sheet1.CommandButton1_Click"
※『Sheet1』の部分はシートモジュールのオブジェクト名になります。

ですが、Bブックのボタン_Clickの中味を標準モジュールに置いて、
AブックのボタンとBブックのボタンと、両方から実行できるようにしておくほうが良いような気もしますね。

(コマンドボタンが[フォーム]ボタンの事だったら、同じマクロを[マクロの登録]するだけの話?)

QExcelVBAで他ブックのマクロを動かす

Aというブックのマクロを動かし、別ブックのコマンドボタンに埋め込まれているマクロの動作を行いたいのですがうまく行きません。
下記がコードになります。


Option Explicit

Public strName As String
Public strPath As String
Public xlApp As Object
Public xlBook As Object
Public xlSheet As Object


Public Function テスト処理()


'ファイル名
strName = Worksheets("名前").Range("B2")
'ファイルを置いている場所
strPath = Worksheets("名前").Range("B3")


Set xlApp = CreateObject("Excel.Application")
'別Excelを開く
Set xlBook = xlApp.Workbooks.Open(strPath, True)
'シートの選択
Set xlSheet = xlBook.Worksheets("操作画面")
xlApp.Visible = True
xlApp.UserControl = True

xlSheet.Activate

setブック処理

End Function

Public Sub setブック処理()


'別ブックのマクロを動かす
Application.Run (strName & "!CmdClick"), ThisWorkbook  

End Sub



上記のマクロを動かすと、Application.Runの部分で下記エラーが表示されます。

実行時エラー1004

'別ブック.xls'が見付かりません。ファイル名及びファイルの保存場所が正しいかどうか確認してください。

setで飛ぶ前に別のブックは開けているので、ファイル名や保存場所は正しいと思うのですがエラーが出てしまいます。
宣言の仕方が間違っているのでしょうか?


ちなみに、別ブックのコマンドボタンのマクロは下記の名称なので、マクロ名の間違いという事も無いと思います。

Private Sub CmdClick()

~処理~

End Sub

Aというブックのマクロを動かし、別ブックのコマンドボタンに埋め込まれているマクロの動作を行いたいのですがうまく行きません。
下記がコードになります。


Option Explicit

Public strName As String
Public strPath As String
Public xlApp As Object
Public xlBook As Object
Public xlSheet As Object


Public Function テスト処理()


'ファイル名
strName = Worksheets("名前").Range("B2")
'ファイルを置いている場所
strPath = Worksheets("名前").Ran...続きを読む

Aベストアンサー

こんにちは。

別プロセスでExcelアプリケショーンを立ち上げる必要があるのかどうか、
こちらでは判断つきませんが、仮に必要なのだとして、、、。
直接的な答えとしては、

Public Sub setブック処理()
  '別ブックのマクロを動かす
  xlApp.Run (strName & "!CmdClick")
End Sub

ということになります。
別プロセスのアプリケーションで開いたブックのマクロなのですから、
そちらのApplicationオブジェクト(xlApp)に対してRunメソッドを実行することになります。
仮に同一のApplicationで"別ブック"を開いた場合の記述としては、
  Application.Run (strName & "!CmdClick")
が正解、ということになります。

Application.Runの引数群に , ThisWorkbook と書かれているのは、
状況から考えて、何かしら転記ミスのようなものだと思っています。
コマンドボタンのマクロを呼び出す場合は、Application.Runの引数は、
プロシージャ名、ひとつ、だけです。

実際にダミーサンプルブックを2通り作成し動作を確認しました。
動作の条件として、
ブック[A]のシート[名前]について、
1◆B2(strName)には、"別ブック"のショートネーム  ex.) "別ブック.xlsm"
2◆B2(strPath)には、"別ブック"のフルネーム  ex.) "D:\フォルダ\別ブック.xlsm"
が正しく設定されていること。
呼び出そうとしている"別ブック"のマクロ CmdClick は、
3◆"別ブック"の標準モジュールに書かれていること。
以上の3点は確認が必要です。
また、別ブックのコマンドボタン、
これは、フォームコントロールのコマンドボタンという前提でお応えしています。
提示した方法でうまく行かない場合は、上記確認の上、
未提示の条件を整理した形の補足を頂ければ、改めて対応します。

以下、余談です。

Public Function テスト処理()
は、ここで開示されている限りでは、Functionプロシージャとしての要件、
つまり、値を返す関数としての記述、が見当たりません。
値を返さないならSubプロシージャで書いた方が解り易いです。

どちらの場合でも、テスト処理を呼び出す元のプロシージャが、
もしもイベントプロシージャだった場合は、
 └呼び出し元のイベントプロシージャ
  └テスト処理
   └ブック処理
    └別ブック!CmdClick
というようなネストは、外部アプリケーションを扱う場合にはややリスキーで、
思わぬ結果に繋がる場合もありますから、呼び出し元の方で、
 Application.OnTime Now, "テスト処理"
のようにコールして、イベントプロシージャを抜けてから処理するように
 └テスト処理
  └ブック処理
   └別ブック!CmdClick
した方が安全ですし、以後の書き換えに困る機会を減らせます。
呼び出し元のイベントプロシージャ と テスト処理 とが
独立して非同期で動作するように書いておく、
 呼び出し元のイベントプロシージャ
  の処理が終わってから
  イベントを抜けた後にスケジュールされているアプリケーション由来の処理が終わってから
 テスト処理
  を実行する
ということです。

以上です。

こんにちは。

別プロセスでExcelアプリケショーンを立ち上げる必要があるのかどうか、
こちらでは判断つきませんが、仮に必要なのだとして、、、。
直接的な答えとしては、

Public Sub setブック処理()
  '別ブックのマクロを動かす
  xlApp.Run (strName & "!CmdClick")
End Sub

ということになります。
別プロセスのアプリケーションで開いたブックのマクロなのですから、
そちらのApplicationオブジェクト(xlApp)に対してRunメソッドを実行することになります。
仮に同一のApplicationで"別ブック"を...続きを読む

Qエクセル マクロで指定フォルダを開く

エクセルにて
指定フォルダを開く、マクロがあれば教えて頂けないでしょうか。
よろしくお願いいたします。

Aベストアンサー

こんにちは。

こういうものですか?
開くフォルダを変えたいときは targ に与えるパスを変更します。

Sub OpenFolders()
Dim targ As String
targ = "C:\"
Shell "C:\Windows\Explorer.exe " & targ, vbNormalFocus
End Sub


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

人気Q&Aランキング