こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

マクロで複数の行をまとめて切り取りする方法

Iの列のセルに「テスト」があったら、その行を切り取ってシート2に貼り付ける
といった流れのコードが下記です。

Sub 切り取り()
Dim i, LastRow As Long
LastRow = Cells(Rows.Count, 9).End(xlUp).Row
For i = 1 To LastRow
If Cells(i, 9) = “テスト” Then
Rows(i).Cut Sheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
Next i
End Sub

●Iの列のセルに「テスト」と「課題」があったら、その行を切り取ってシート2に貼り付ける
といったものをしたいのです。
1.
If Cells(i, 9) = “テスト” Then

If Cells(i, 9) = “テスト,課題” Then
結果エラー

2.
If Cells(i, 9) = “テスト” Then

If Cells(i, 9) = “テスト&課題” Then
結果エラー

正常なコードを教えてくださいますか?
宜しくお願いします。

投稿日時 - 2018-09-13 09:37:34

QNo.9536816

困ってます

質問者が選んだベストアンサー

そらあたりまえです。if文の書式が誤ってますもん。

If Cells(i, 9) = “テスト&課題” Then

とかではなく

If Cells(i, 9) = “テスト" or Cells(i, 9) = “課題” Then

ですよね。

if文の直後は「論理式」が来ないとダメなので、Cells(i, 9) = “テスト&課題”
だと、"テスト&課題”という文字列しか見つけに行きませんよ。

投稿日時 - 2018-09-13 09:44:16

お礼

ありがとうございます。
動作できました。
orでしたか…

投稿日時 - 2018-09-13 10:32:51

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)