• ベストアンサー

EXCEL 一覧表の頭記号と一致した行のみ削除

tom04の回答

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

No.2・3です。 No.2の画像通りの配置だとすると Sheet2の「規格品コード」の数字より前の部分がSheet1のE列と同じ場合、その行を削除すればよい訳ですよね? コードを↓に変更してみてください。 Sub Sample2() Dim i As Long, k As Long, lastRow As Long, lastCol As Long Dim str As String, buf As String, wS As Worksheet Set wS = Worksheets("Sheet2") Application.ScreenUpdating = False With Worksheets("Sheet1") lastRow = .Cells(Rows.Count, "A").End(xlUp).Row lastCol = .Cells(1, Columns.Count).End(xlToLeft).Column For i = 2 To wS.Cells(Rows.Count, "A").End(xlUp).Row For k = 1 To Len(wS.Cells(i, "A")) str = Mid(wS.Cells(i, "A"), k, 1) If Not str Like "[0-9]" Then buf = buf & str Else Exit For End If Next k .Range("A1").AutoFilter field:=5, Criteria1:=buf & "*" If .Cells(Rows.Count, "A").End(xlUp).Row > 1 Then Range(.Cells(2, "A"), .Cells(lastRow, lastCol)).SpecialCells(xlCellTypeVisible).Delete shift:=xlUp End If .AutoFilterMode = False buf = "" Next i End With Application.ScreenUpdating = True End Sub ※ 今回もNo2の画像の配置通りとします。 (列は1行目の項目が入っていれば何列あっても構いません)m(_ _)m

yasuhito_s1
質問者

お礼

お世話になります。 再度回答有難うございます。 大変恐縮ですが、やはり上手くいきませんでした。 リストのデータが全て消えてしまいます。 明日、もう一度トライしてみます。

yasuhito_s1
質問者

補足

お世話になります。 ご連絡が遅くなり申し訳ありません。 再度トライしたところ、Sheet2に記載の規格部品リストの行間が所々空白になっているところが有り、空白が無いようにして再トライしてみました。 感激です。 完璧に一括削除出来ました。 有難うございました。

関連するQ&A

  • おねがします。仕入部品の単価一覧表を作成したいのです。

    おねがします。仕入部品の単価一覧表を作成したいのです。 部品コード 部品名 単価 と項目があります。 単価の入力制限を設けたいのですが、どうしたらよいか分かりません。 入力規則かとも思い試したのですがうまくいきません。 単価の入力規則は、桁数の制限です。 8桁と少数は2桁 つまり、 12345678.12 入力のデータは 100 159 854625 1500 10.15 100.1 1.44 一応、1000万に対応すべく8桁にして、少数は0.44のように2桁としたい。 この規則以外は入力できないようにしたいのです。 どうかおねがいします。

  • Excel シート1の雛型からシート2の一覧表作成へ

     お世話になります。  私は会社でExcelを使い事務をしております。  式を入力して少し事務を簡素化する事は出来ますが、マクロやVBには明るくありません。  シート1の雛型1箇所に入力すると同時に、シート2に一覧表が作成される様には出来ないものでしょうか?  頑張ってマクロを使ってみましたが、シート1のB1を入力するとシート2のB1の数値まで変わってしまいます。(表を参考にしてください)  シート1(雛型)    A       B        C 1 固定数  入力した数字  数式A/B  シート2(一覧表)     A           B         C 1 シート1A1の数字 シート1B1の数字 シート1C1の数字  2 シート1A1の数字 シート1B1の数字 シート1C1の数字 3 シート1A1の数字 シート1B1の数字 シート1C1の数字 4 シート1A1の数字 シート1B1の数字 シート1C1の数字  分かりにくい説明で申し訳ありません。  皆さまのお知恵をお待ちしております。  よろしくお願いします。

  • エクセルにて複数のファイル(一覧表)から参照を切替えて検索するには?

     部品調達部門で仕事をしていますが、今、新たに関連資料の作成で頭を痛めています。    A      B       C       D        マークII   クレスタ   チェイサー   1 タイヤ   ○○    ○○      ○○ 2ハンドル  ○○    ○○      ○○ 3ホイール  ○○    ○○      ○○ 4シート   ○○    ○○      ○○ 5ダッシュ  ○○    ○○      ○○ と言うような表があり、別のシートに部品別に納品予定表を組もうと考えています。A列の構成部品は車種により違います。(車種により部品有/無がある)  またこの一覧表はシリーズ毎に複数あり、(カローラ/スプリンター)(ハイエース/グランビア)色んなシートが存在します。  そこで予め、生産予定に従って部品別の納品予定を次のようにしたいのです。  11月度予定  計   タイヤ番号  1マークII   300    ○○  2ハイエース  50      ○○  3クレスタ    100      ○○  4カローラ    500      ○○ と言う風に、VLOOKUP+MATCH,又はINDEX+MATCH+INDIRECT関数を複合、切替えてA列車種に応じた一覧表ファイルからタイヤ番号を表引きしたいのです。  元データー一覧表が複数あるためにこれをINDIRECT+セル範囲名前で切替えたいのですが、テキスト活用例にあまり載っていないのでよく分かりません。INDIRECTをどこに入れれば良いでしょうか?他に簡単に切替える方法、関数の組み合わせはありますか?  車種がマークIIならマークII一覧表のタイヤデーター番号を検索し別表に表示させたいのです。IF+OR/IF+AND/IF+文字検索関数ではかなり式が長くなるように思います。一番簡単に表引きが可能な方法を教えてください。  

  • 条件に一致する行を削除するマクロの書き方

    お世話になります。 EXCELのシート(添付参照ください)で受発注管理をしてます。 「No.」は(月2桁)(日2桁)(連番=01~無限。これまでの最大は3桁)+アルファベット(1文字以上) で自動的に振られます。 ここから別ファイルをつくりたいのですが。 0)シートを新しいブックに「コピー」 1)「出荷数」に何らかの数字がある行を削除 2)「メモ」に特定の言葉(この表では”倉庫”)がある行を削除 3)作業日(この表では0912XXa=9月12日)から1か月以前のデータの行を削除   (つまり8月13日以降のデータを残す) 4)表全体を選択して「No.」をキーにして並び替え 5)セルA1を選択 6)名前を付けて保存(形式は 「(特定の言葉)+(西暦年4桁)(月2桁)(日2桁)+データベース.xls) これを一連のマクロで処理したいと考えております。 0、1、2、4、5、6は何とかなりそうなのですが、3)が私の技量ではできません。 1か月前ということは上に書きました通り、8/13~のみ残すということなのですが、 アタマに0813が付くデータはありません。この場合は0828~を残します。 2か月前でしたら同じく0713XXxのデータはありませんので、 0714~以降を残すことになります。 これはどうやって記述すればうまくいくでしょうか? ご教示いただければ幸いです。 ※すみません。再掲です。  「何とかなりそう」と書いたのですが、ほかの部分も怪しいです。  可能でしたら0~6すべて書いていただけると喜びます。

  • エクセルでこんな表を自動的に作りたいです

    エクセルで下記のような停止値一覧表があります。 <停止値一覧> 記号  停止値 a    3 b    2 c    5 d    4 e    10 上記のデータを元にして、下記のような記号別の連番表を別シートに自動的に作りたいのです。。。 <連番表> No  記号 0   a 1   a 2   a 0   b 1   b 0   c 1   c 2   c 3   c 4   c 0   d 連番表の「No」は連続データで、 ・開始値=ゼロ、 ・停止値=<停止値一覧>の停止値からマイナス1した値、 ・増分=1 です。 関数で簡単に出来ますでしょうか?それともマクロか何かになるのでしょうか..? 分かりにくい説明で恐縮ですが、いい方法をお分かりの方、助けて頂けないでしょうか。 よろしくお願いします。 追記:エクセルは2002を使用しています

  • エクセル2010 一覧表から抽出したい

    一覧表の中に複数の業者があり、それを別の表に1種類(1業者毎に)づつ表示する事はできますか? 言葉がわからないので抽出と書きました F列に自分で業者名を書いて合計を出すことはできますが、自分で書かなくても 自動で重複することなく並べたいです。 また、別シートにも同じように重複することなく並べたいと思っています 画像を添付しますので宜しくお願い致します 説明が下手ですいません

  • 資格一覧表について

    エクセル2010を使用しています。 何度か関数についてお聞きしてデータがうまくいったのですが、 社員が入れ替わる度にデータを変換をしなければいけなく大変な処理になってしまいました。 一番いいのは「アクセス」が使えると楽だと思うのですが、現状では「アクセス」を使えるほどのスキルがありませんので、エクセルにて教えて頂けたらと思います。 まず各部署のシートにそれぞれの記入をします。 記入をしたら全社員一覧表にそれぞれ関数にて記入される状態にしたいのです。 (シート等が移動になっても) 管理番号の所に数字を記入をされたら氏名とその人の資格一覧枠に記入が入る状態にしたいのです。 また、資格一覧枠には資格を取得をしたら「○」の記号を入れたいと思っています。 自分なりにLOOKUP等を使ってしようと思ったらセル入力が並んでないとできない感じだったのです。(なんらかの方法でできる?) 申し訳ありませんが、エクセルに詳しい方、得意な方、こんな管理の仕方もあるよ、ってご存知の方お忙しいと思いますがご協力をお願い致します。

  • &♯9829等の一覧表

    &♯9829(ホントは小さいシャープですが)と 入力すると、ハートマークになりますよね。 数字の部分が違うと別なマークになると思うの ですが、どこかのHPで一覧表はありますか? よく行くチャットでハートマークを使用している のですが、それしか知らないんです。 過去の質問を見ても、一覧表に関する事は 無かったので、質問しました。 よろしくお願いいたします。

  • EXCELファイルの一覧表形式での取込について

    EXCELで以下のような事を実現しようとしています。 まだマクロや関数等の知識が少なく、どう作っていけばいいのかよくわからないため、 教えていただけますでしょうか。 <やりたい事> ・図1の様なEXCELフォーマットに内容を入力し、別ファイルのEXCELシート(図2)に  一覧表の形で取り込む。・・・図2の一覧表で発注状況を管理。 ・新たに発注するような場合は、図1のフォーマット(シート)をコピーし、内容を入力。  →その都度 図2の一覧表に追加(最終行の後に追加)。 ・図1はブック形式で、発注日付毎にシートを分けて保存。図2へは、表示している  シートの内容のみ取り込む。(取り込みボタンを作る等考えています)。 ・空欄の場合は図2の一覧表には取り込まない。 ・図1と図2は別ファイル(リンクしないファイル)として保存。

  • エクセルのひと月の一覧表から誰が、いつ、どれだけの量を使用したか抽出したい

    エクセルのひと月の一覧表から誰が、いつ、どれだけの量を使用したか抽出したい 月集計表(シート名) 氏名|番号| 1 | 2 | 3 | 4 | 5 | 6 | 7 | A氏| 1 | | | | |500| | | B氏| 2 | |150|213| | | | | C氏| 3 | | | | | | | | D氏| 4 | | | | |534| | | 今の上のような月の一覧に使用した量を入力しています。 番号の列の数字はその左のセルにある各顧客の管理番号、一番上の行にあるのが月の日付です。 これが6月の各顧客の一覧だとして 使用回数(シート名) 氏名|番号|_1回目_|_2回目_|_3回目_|→4,5,6回目と続く A___|1___|6/4|500|___|___|___|___| B___|2___|6/2|150|6/3|213|6/7|100| C___|3___|___|___|___|___|___|___| D___|4___|6/5|534|___|___|___|___| 管理番号の並びは変えずにこのような一覧を別シートに作りたいのです。 月の一覧に入力したら自動的にこちらにも入力されるような方法はあるでしょうか?あったら方法もお願いします。