私はかなりvbaを新しくしており、ちょうど立ち往生しています。私はA1からBW50までの情報を含むスプレッドシートを持っています。セルAM7には特定の値が含まれています=(言います) "Mytext"。値を見つけて、この特定のテキストを含む列の後に続くすべての列をクリアするコードを記述したいと思います。私は、列を「修正」してクリアすることができますが、これらの列は「Mytext」の位置だけでなく変更される可能性があることを知っています。私は何かを理解することはできません。どんなアイデアですか? 特定の値、vbaを含むセルの後に値を含む列のすべての内容をクリアします
はおそらく最速となりますfindメソッドを使用します答えて
ありがとう:
Option Explicit
Sub Clear()
Dim rng As Range
Dim str As String
str = "text"
Set rng = ActiveSheet.Cells.Find(What:=str, After:=ActiveCell, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
If Not rng Is Nothing Then
Range(Columns(rng.Offset(0, 1).Column), Columns(rng.Offset(0, 1).Column).End(xlToRight)).Delete
Else
MsgBox "The value '" & str & "' was not found."
End If
End Sub
注:あなたがではなく、テキストの任意の部分を探している場合LookAt:=xlWhole
はLookAt:=xlPart
に変更する必要があります全体の細胞価値。
ありがとうBrian、if文で範囲を教えてくれますか?範囲の列部分をどのようにして列に設定できますか? – Totos
あなたの質問が分かりません。あなたは明確にしてくださいますか?また、私の答えがあなたのために働いた場合、答えとして受け入れてください。 :-) – Brian
申し訳ありませんが、このサイトの全く新しいメンバーです。 Range(Column.Offset(0、1).Column)、Columns(rng.Offset(0,1).Column).End(xlToRight))を削除します。列全体が、私は論理を理解していない。それは、 "my text"の後に始まるすべての列を値を持つ最後の列にオフセットすることを意味しますか?それらのすべてを削除しますか? – Totos
あなたはこれを試すことができます。
Option Explicit
Sub ClearColumns()
Dim f As Range
Dim textToFind As String: textToFind = "Mytext"
With Worksheets("mySheet").Range("A1:BW50") '<--| change "mySheet" with your actual sheet name
Set f = .SpecialCells(XlCellType.xlCellTypeConstants, xlTextValues).Find(What:=textToFind, LookAt:=xlWhole, LookIn:=xlValues, MatchCase:=False) '<--| look for text in given range cells withtext values
If Not f Is Nothing Then .Range(f.Offset(, 1), .Columns(.Columns.Count)).Resize(.Rows.Count).ClearContents '<--| if text found then clear given range columns at the right of the found text
End With
End Sub
- 1. Excel VBAセル内に特定の値を含む列をロックする
- 2. セル内の数値を含む行を削除するVBAループ
- 3. SQL - 2つの特定の値を含むすべての行?
- 4. 範囲内検索とVBAの特定の文字列を含むセルの内容の置換
- 5. 特定の値を含むすべてのセルとして範囲を定義します。
- 6. 数字のテキストを含む列の内容を数値に変換します。
- 7. VBA:セルペースト範囲の値を含むすべてのワークシートから
- 8. #NUMを含むセルをクリアしてください! VBA Excelで
- 9. 特定の単語を含むすべてのセルを返します
- 10. VBAループ:セルに特定の値が含まれている場合、その値とその次の3行を含む行を削除します。
- 11. 特定の文字列を含むファイルを含むすべてのディレクトリを印刷します。
- 12. Googleシートの条件付き書式設定セル最後の列を含む、最後の行を含むセル
- 13. php - 特定の列に特定の値を含むcsv行を取得する
- 14. 値を含む列のすべての行を選択する
- 15. 特定の単語を含む列内のセルを見つけますが、数値も含まれていて、その行の位置を返します
- 16. データフレーム内のすべての変数に最大値を含む列を返す
- 17. ストライクスルーを含むセルを負の数値に変更します
- 18. グループ内のすべての値を含むサブクエリー
- 19. [ElasticSearch]:特定の値を含むすべてのインデックスを取得する
- 20. VBA Excel - 別のセルの値に基づいて値を含む行の各セルを塗りつぶし
- 21. 特定の単語を含む文字列の内容を削除する
- 22. NULLを含むすべての値を返します。
- 23. 特定の列に特定の値を含む行を非表示
- 24. 最初の行に特定の値を含むセル配列内のすべての列を選択しますか?
- 25. 数値を含む範囲内のすべての数値を追加する
- 26. 特定の文字列を含むすべての行を削除します
- 27. オブジェクト値を含むカラムを含むEloquentクエリの値を表示
- 28. 入力値を含むdivの内容を取得
- 29. ループ内に文字列を含むVBAセル
- 30. Excelのセル値から特別なcharatcerを含むSQLへ
ループ「のMyText」と、クリア以下のすべての列を探しているセルを介して。特にどの部分に問題がありますか? –