https://oshiete.goo.ne.jp/qa/9671375.html
前回の引き続きです。
よろしくお願いします。
ボタンマクロの名前です。
xlsb'!ボタン2_Click でした。
前回は質問の補足が不足してしまい焦ってしまって、一気に沢山質問してしまい…
混乱してしまいました。1個づつ落ち着いて取り組んでいこうと思います。
よろしくお願いします。
増え続けていくデータの領域指定について、ご教授お願いします。
名前の定義の範囲指定について
シート名は 管理表 です。
AからZ列まであって、
行については増え続けていきます。増えていく行を確認するのは、A列です。
項目名の記載のあるのは、A6です。
データを入力するのは、A7から取りあえず、Z7までにしたいです。
データはこれから増え続ける予定です。
補足として、画像を別添しました。
No.2ベストアンサー
- 回答日時:
まずさあ、
sub ほにゃらか() ’ほにゃらかはあなたがつけたいSub名を自由に
ここに記述しないと!!
End sub
どうやって今まで試してたの?
で
Worksheets("Sheet1”)に変えてもいいって書きましたよね。
Worksheets("管理表”). て、なってないんじゃない?
それとあくまでもそれは入れ物で中身はまだ書いてないからね。
絞り込んでるかいないかをそうやって判断できるから
それぞれの場合でかき分けたらいいかなというもの。
いつもありがとうございます。
今日は過去のスレッドを再確認しながら、オートフィルター部分を再勉強してます。
わからない事ばかりで、何度も質問してしまって、申し訳ない気持ちでいっぱいです。
ついていけるように頑張りますので、またご教授お願いします。
No.15
- 回答日時:
おと、目で追うのは意味をかんがえながらね。
たとえば、反応するのは、g列とq列だっけ?
その他の列の場合と進み方が異なる筈だから、それを確認しながら追うって事です。
No.13
- 回答日時:
黄色はそこで停止してます。
つまり無反応ではありません。
ステップ実行はf8キーです。
どう進んで行って終わるかを
f8キーを押して、目で追ってみてくれませんか?
おはようございます。
お休み中、大変恐れ入ります。
昨日のトラブルの報告をさせてください。
デバック実行しても弾くような電子音がして、実行不可でしたが、新規ブックにコピーで無事稼働しました。
心より感謝しています。
取り急ぎお礼を申し上げます。
No.12
- 回答日時:
最後の画像のコードに関しては、判らないのですが・・・
チェンジイベントで一度エラーが出た場合、その後無反応になることがあります。
ダメ元で次のコトをしてみてください。
新しくExcelを立ち上げる → 元のシートをコピー → まっさらなExcelに貼り付け
(データがあるシートが複数ある場合はシートの数だけコピー&ペースト)
マクロがある場合はマクロのコードをコピー → そのままVBE画面に貼り付け!
※ ブック全体をコピーしないでください。
これでマクロが復活するコトがあります。m(_ _)m
ありがとうございました。
早速新しいエクセルにシートを一つずつコピペして、プライベートモジュールもコピーぺ。標準モジュールもコピペしました。
一番最初に教えていただいた回数指定の列のコピーは無事に動きました。
やはり、2回目に教えていただいたQ列のセルのどれかに該当する番号の(A7以降)コピーどころか、セルの操作をすると応答が無くなってしまいます。
どうしたらよいでしょうか?
No.11
- 回答日時:
>エクセルが応答無くなってしまって
これが全くの無反応なら、まず試してほしいのは
添付の様に
IF Target. で始まる行の横に丸が
有るところをクリックすると
丸がついて行の色が変わります。
これをブレークポインタをセットするといいます。
これで管理表に何か入力したらここで
実行が停止します。
ここで止まるなら無反応ではありません
そうならず無反応ならイミディエイトウィンドウに
Application.EnableEvents=True
とすれば回復するかと。
対応ありがとうございます。夜分にすみません。
早速やりましたが、
if target.の一行目から黄色くなっていました。
補足添付します。
No.10
- 回答日時:
この質問最初の画面が変だなぁ。
どうしてこうなったのかな?
僕は前のスレッドの最後の補足の画面で処理することを
考えてました。K17:L18に入力したので絞るから
そのシートのコマンドボタンで起動。
勿論オートフィルターは管理表シートですが、
そこは手で操作するわけじゃないと。
表示するのも入力した画面だしね。
それがフィルターの詳細設定なら、管理表シートはデータ置き場
というだけで、名前定義さえ済んでたら、その名前しか使わない
考えでした。
前のシートと違う理由は、質問用で並行して勉強して行こうと思い、新たなブックにコピーして、用語を触ったりして、教えて頂いて成功したのを原本に貼り付けていました。
どころが…私の勉強不足から、3月16日16時に頂いたいた、A列のセルの中身が…例えば、A列に123という数字が5行あったら、A列に123と入力された行にQ列で指定した数字をコピーするという大切なプログラムを教えて頂いたのに…
Q列に数字を入れたり、消したりしたら、エクセルが応答無しになってしまうトラブルが発生してしまいました。
とても大事なプログラムです。
助けてください。お願いします。
本当にごめんなさい。自分で何とかしようと頑張ったんですが…難しくて、手に負えませんでした。
助けてください。
よろしくお願いします。
No.9
- 回答日時:
ちょっと整理しておきますね。
それと僕の話とtomo04さんの話は一緒くたにすると意味不明になるから
ブックは別名でお願いします。
>前回のスレッドの質問で、オートフィルターの検索マクロを
この話しの流れは表示的には管理表でオートフィルターをかけるのと
ほぼ同じデータだと。
ただ表示するのは別のシートのK17:L18で指定したもので
管理表をフィルタリングしたデータを、その別シートに
という話でしたよね。
だからオートフィルターで絞り込んだのを、もう一つのシートに
貼り付ける想定で話しかけてました。
補足の②がその時のことです。
オートフィルターで操作するときに事前に絞り込み状態を知って
処理するのが妥当と考えたのです。
その流れの中で、フィルターの詳細設定に、ちょっと横道それましたが
(というか、そっちが本筋で良かったんじゃないかと思うけど、)
補足②でオートフィルターに戻す話を言われたので・・・
動かすこと自体はどっちでも出来ますよ。
ただ、No1に書いた通りですが、管理表のA1:A5は名前定義に
あたって使わない前提ですから、お忘れなく。
いつも大変お世話になっております。
3/16に教えていただいて、ちゃんと動いていたはずの列Qのセルの内、一つに任意数字を入力したら、A1の重複しているすべての番号にコピーされるというマクロを実行したら、エクセルが応答無くなってしまうようになってしまいました。
成功していた分をコピペで何度もリトライしてもダメでした。
助けてください。
取り急ぎ補足説明に画像を添付します。
No.8
- 回答日時:
それでは最後にコードにコメントを記載しておきます。
まず↓の画像の左側「管理表」シートのシートモジュールに↓のコードをコピー&ペースト
Private Sub Worksheet_Change(ByVal Target As Range)
If Target <> "" And Target.Address = "$A$1" Then
Call Sample1
End If
End Sub
次に標準モジュールに↓のコードをコピー&ペースト
Sub Sample1() 'この行から//
Dim lastRow As Long, lastCol As Long, wS As Worksheet
'//「貼り付け用」シートを「wS」という変数に格納//
Set wS = Worksheets("貼り付け用")
'//「管理表」シートの・・・//
With Worksheets("管理表")
'//最終行を取得//
lastRow = .Cells(Rows.Count, "A").End(xlUp).Row
'//6行目で最終列を取得//
lastCol = .Cells(6, Columns.Count).End(xlToLeft).Column
'//「貼り付け用」シートのデータを一旦消去//
wS.Cells.Clear
'//「管理表」シートのA列をA1セルのデータをキーとしてフィルタを掛ける//
.Range("A6").AutoFilter field:=1, Criteria1:=.Range("A1")
'//A1セルのデータがあれば表示されているデータを「貼り付け用」シートのA1に貼り付け//
'//(データがない場合は項目行だけの表示になるので「>6」としている)//
If .Cells(Rows.Count, "A").End(xlUp).Row > 6 Then
Range(.Cells(6, "A"), .Cells(lastRow, lastCol)).SpecialCells(xlCellTypeVisible).Copy wS.Range("A1")
'//オートフィルタを解除//
.AutoFilterMode = False
Else
'//A1セルのデータがない場合、メッセージボックスを表示//
.AutoFilterMode = False
MsgBox "該当データなし"
End If
End With
End Sub 'この行まで//
これで「管理表」シートのA1セルにデータを入力してみてください。
※ こちらで上記のコードでは↓の画像のような感じになります。m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelでASCを使って全角を半角...
-
作成した数式を値として表示し...
-
Excel関数について教えてくださ...
-
Excel関数について教えてくださ...
-
条件付き書式設定で罫線を引き...
-
エクセルのセル内に分数などの...
-
エクセルの質問です。 F列からL...
-
Microsoft 365Excelの見開きペ...
-
ワークシートに出現したこの画...
-
エクセルの文字が途中から消える
-
Excelの警告について
-
タイムスタンプとテキストから...
-
シートの情報を別のシートへま...
-
マクロの処理が遅くなった
-
エクセルの数式バーのフォント...
-
Excelでの文字色
-
エクセルデーターから必要な項...
-
Excelの数字の前に入っている空...
-
excel2003 マクロボタンが押せない
-
エクセルでファイルの最終更新...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの警告について
-
Excelで数値を時間数に変換する...
-
エクセルの数式バーのフォント...
-
エクセルで数字の組み合わせを...
-
エクセルを使用して、円周率を...
-
Excelで特定の文字列が含まれて...
-
Excel 対象のセルに入力が無い...
-
任意の値が存在する行に名前を...
-
エクセルでファイルの最終更新...
-
index関数の説明をお願いします。
-
条件付き書式でやりたいのですが
-
重複しない値を取り出したい
-
【ExcelVBA】UTF-8(BOM無)でC...
-
【マクロ】マクロが割当てされ...
-
エクセル IF計算式?でしょうか?
-
エクセルで曜日を入れたい
-
表中の指定した条件の文字列を...
-
【Excel】版が同じ事を示す番号...
-
EXCELの散布図で日付が1900年に...
-
Excelについて。Excelに縦1列に...
おすすめ情報
よく考えたら、この質問には名前の定義は不要なんですよね。
すみませんでした。
これが解決したら、名前の定義について、ゆっくり考えて行きたいと思います。
前回のスレッドの質問で、オートフィルターの検索マクロを教えていただいていたのを思い出しました。
コピペで、ワークシート名を入れたのですが、エラーになってしまいました。
ご教授お願いします。
>次に表示されているVBE画面の左側に「Sheet1(管理表)」と表示されていると思いますので
そこをダブルクリック → 表示されたVBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト
この部分、見つけました。
ありがとうございました。
実行したところ、データが全て消えてしまいました。
私の貼り付けがまずかったのでしょうか?
助けてください(汗)
Qの列のコピーや削除をしたら、エクセルが応答無くなってしまって、困っています。
3/16のスレッドに戻って、何度もトライしているのですが、結果は同じで。
せっかく上手くモジュールが作動して、喜んでいたのに・・・
どうしたらよいのでしょうか?
とても困っています。
一行づつ茶色に反転させて試してみました。
添付の通り、一行目から黄色くなってしまいました。
全部反転して試しました。
画像添付します。