- ベストアンサー
関数の質問
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
右1文字に半角英文字のあるデータを抽出するなら以下のような関数を入力して下方向にオートフィルします。 =INDEX(A:A,SMALL(INDEX(((CODE(UPPER(RIGHT(1&$A$2:$A$1000)))<65)+(CODE(UPPER(RIGHT(1&$A$2:$A$1000)))>90))*1000+ROW($A$2:$A$1000),),ROW(1:1)))&""
その他の回答 (1)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! >作業列、フィルターは使用せずにお願いします。 手っ取り早くVBAにしてみました。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻りマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim i As Long, lastRow As Long lastRow = Cells(Rows.Count, "B").End(xlUp).Row If lastRow > 1 Then Range(Cells(2, "B"), Cells(lastRow, "B")).ClearContents End If For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row If Right(Cells(i, "A"), 1) Like "[A-Z a-z]" Then Cells(Rows.Count, "B").End(xlUp).Offset(1) = Cells(i, "A") End If Next i End Sub 'この行まで ※ 関数でないのでA列のデータ変更があるたびに マクロを実行する必要があります。m(_ _)m
お礼
tom04様 回答ありがとうございます。 LIKEってあるんですね。 勉強になりました。 ありがとうございます。
お礼
MackyNo1様 回答ありがとうございます。 こんな組み合わせがあるんんですね。 勉強になりました。 ありがとうございます。