例
Sheet2
(E列) (F列)
3
41 兵庫高速道路 33333
42 阪神高速道路 55555
52
63
64 阪神高速道路 66666
Sheet2のE41からデータのある所(約200)までの決まった文字「阪神高速道路」とその隣(F列)のセットセルを抽出し、Sheet3のF3へ順にコピーしたいと思います。
*Sheet2のE41以降は空白ありません。
結果
Sheet3
(F列) (G列)
3 阪神高速道路 55555
4 阪神高速道路 66666
5
6
7
となるように。
Dim Cr As Range
With Sheets(2)
Set Cr = .Range("E1:F1")
Cr.Item(1).Formula = "=E41"
Cr.Item(2).Value = "'=阪神高速道路"
.Range("E41").CurrentRegion.AdvancedFilter _
xlFilterCopy, _
CriteriaRange:=Cr, _
CopyToRange:=Sheets(3).Range("F3")
End With
うまく抽出できません。お願い致します。
No.1ベストアンサー
- 回答日時:
質問するカテゴリが少し間違っている気がします。
プログラミングの方に質問すればもう少しいい回答が得られるかもしれません。
一応コードを乗せて置きます。
---------------------------------------------------------------------
Dim intIndex As Integer
Dim intWrite As Integer
'書き込み先の行カウントを指定
intWrite = 1
'Sheetの検索行指定(1が開始位置、10が終了位置)
For intIndex = 1 To 10
'セルの値が"阪神高速道路"の場合
If (Worksheets("Sheet2").Range("A" + CStr(intIndex)).Value = "阪神高速道路") Then
'ヒットした文字列と次のセルの値を指定したSheetの指定した書き込み先行から順に格納
Worksheets("Sheet3").Range("A" + CStr(intWrite)).Value = Worksheets("Sheet2").Range("A" + CStr(intIndex)).Value
Worksheets("Sheet3").Range("B" + CStr(intWrite)).Value = Worksheets("Sheet2").Range("B" + CStr(intIndex)).Value
'書き込み先の行カウントアップ
intWrite = intWrite + 1
End If
Next intIndex
No.3
- 回答日時:
この程度の問題なら関数でも、出来ます。
その1方法はGoogleで「imogasi方式」で照会すれば、沢山の問題と、他の方の他の方式の解放も出てきます。VBAですが、マクロの記録をとって、フィルタオプションに操作を記録をとると判る問題で、質問するほどのことではないので。
抜き出すシートが変わる場合は、注意が必要でこの質問の場合はSheet3の側で操作しなければならない。
ーー
ほかに検索の操作でマクロの記録をとる方法もある。FilterでなくFindメソッドになる。
ーー
1行ずつ全行総なめにして、阪神高速道路 かどうか判別しても、それほど時間の問題にはなるまい。
ーー
本質問のSet Cr = .Range("E1:F1")
は明らかにおかしい。見出しと条件になる内容とを指し示すので最低でもF2になる。
エクセルの(どちらかと言うと操作や知識)経験が少ないことが露呈したようだ。
ーー
Cr.Item(1).Formula = "=E41"
のItemなんて普通はあまり使わない表現だと思う。もちろんItemも使うのはよいが、VBAの解説書にほとんど使われていないだろう。
回答有難う御座います。
他のマクロ実行との組合せにより本問題も と考えており、ワークシート関数は頭にありませんでした。
参考にさせて頂きます。
No.2
- 回答日時:
こんにちは。
フィルタオプションを使うためには、Sheet2 のE41 に、このようなタイトル名を入れます。
道路名 番号
データ ・・・
データ ・・・
'-------------------------------------------
Sub Test1()
Dim Cr As Range
Worksheets("Sheet3").Range("F3").CurrentRegion.ClearContents
With Worksheets("Sheet2")
Set Cr = .Range("E1:E2")
Cr.Cells(1, 1).Formula = "=E41" 'Itemでも可
Cr.Cells(2, 1).Value = "阪神高速道路"
'フィルタオプション
.Range("E41").CurrentRegion.AdvancedFilter _
xlFilterCopy, _
CriteriaRange:=Cr, _
CopyToRange:=Worksheets("Sheet3").Range("F3")
End With
Set Cr = Nothing
End Sub
'-------------------------------------------
なお、VBが分かるといって、VBAが分かるとは必ずしも言えないのが、VBAの難しいところです。VBAには、VBAの世界があります。
それと、文字比較だけを目的にするなら、Like 演算子やStrComp 関数でするほうが良いです。
私のVBAはWeb参考を元に作ってみました。
参考の選択が間違えていた気がします。
Like 演算子やStrComp 関数 参考にしてみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 地図・道路 関西エリアの高速道路に詳しい方に質問があります 2 2022/10/02 13:56
- Visual Basic(VBA) Sheet「状況」から、分類の年齢別カウント数をSheet「D表」へ転記する下記マクロを作っています 7 2022/12/14 17:57
- その他(交通機関・地図) なんで関西の交通網って天国状態なの? 1 2022/04/16 06:57
- 関西 「阪神高速」工事の影響 2 2023/03/02 00:16
- 地図・道路 草津に住んでいます。 大阪までよく車で行くのですが 高速道路だと1時間 料金は片道2000円くらい 1 2023/06/03 18:26
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/03/25 08:33
- 地図・道路 ユニバーサルスタジオジャパンに行く時の高速道路について 1 2022/07/20 13:52
- 地図・道路 からと西入口から阪神高速7号経由で姫路へ 3 2022/11/22 17:47
- その他(交通機関・地図) 【所要時間と高速料金】 大阪府八尾市から、 和歌山県の白浜町の アドベンチャーワールドまで、 高速道 2 2022/07/31 18:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
富士山麓にオウム鳴く?
-
横浜駅から200KmのJR駅は
-
関西(大阪)から尾瀬に電車、...
-
SDカードに取り込んだ音楽の...
-
Googleドライブをクイックアク...
-
√6のようなルートを少数に直す...
-
京都から名古屋: 一般道での走...
-
ルート50の解き方
-
名古屋から神戸へ。車で安くい...
-
Cドライブ直下に、ファイル等を...
-
ワードで式を書く時に、ルート...
-
同一フォルダ内で、エクセルを...
-
固定電話の番号から住所を検索...
-
一方通行や右左折禁止のわかる...
-
高円寺駅から東高円寺駅まで
-
一般道で軽井沢へ
-
√96の解き方
-
ノートパソコンにHDDアクセスラ...
-
首都高を使わずに千葉方面へ行...
-
大阪~草津までの一般道最短ル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
富士山麓にオウム鳴く?
-
Googleドライブをクイックアク...
-
関西(大阪)から尾瀬に電車、...
-
√96の解き方
-
SDカードに取り込んだ音楽の...
-
通勤経路をわざわざ遠いところ...
-
自宅から最寄りの駅までの地図...
-
横浜駅から200KmのJR駅は
-
一方通行や右左折禁止のわかる...
-
google mapでのルート検索を良...
-
昼休みに来る人ってどういう神...
-
√6のようなルートを少数に直す...
-
2023.4.18東京から松本.安房峠...
-
ルート50の解き方
-
Googleマップのルートを手動で...
-
googlemapで最寄駅を調べる方法
-
nslookup時のDNSサーバのタイム...
-
京都から名古屋: 一般道での走...
-
定期券で途中で降りたらお金取...
-
番地までは分かっているがマン...
おすすめ情報