• ベストアンサー

セル内の余分なスペース削除

こんにちわ。 エクセルのVBAを使ってセル内の右側に余分なスペースがA列にランダムに入っています、それを一括で削除する方法はありますか? データーの行数は毎回違う為、セルの範囲を指定することが出来ません。A列のデーターの入力されている行数分だけ一括で削除できないでしょうか?

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

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.3

No2です 追伸 ライブラリーを見たら、 RTrimと言うのもありました。 右側の空白だけ、削るなら、TrimをRTrimに変えて 利用してください。

その他の回答 (2)

  • tom11
  • ベストアンサー率53% (134/251)
回答No.2

こんにちは、 文字列の右側の余分なスペースということですが。 文字列の左右のスペースをとるのにTrim関数があります。 左側に空白は、多分ないと思うので、 A列の入っている文字列の左右の空白を取り除こうとすると 以下のようになるようになると思います。 Dim r As Range For Each r In Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) r.Value = Trim(r.Value) Next 実行後と、実行前と、変わりはないですが。 A列をオートフィットすれば、カラムの幅は スペースがなくなった分、小さくなります。

apelave
質問者

お礼

大変参考になりました。 本当にありがとうございました。 処理速度など踏まえてNO.1さんのでさせていただきましたが勉強になりました。ありがとうございました。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

A列を選択。 ツールバーのデータ>区切り位置で カンマやタブなど~ を選択し次へ。 区切り文字スペースにチェック。(連続した区切り文字~もチェック確認)で完了。 必要であれば、マクロの自動記録実施。

apelave
質問者

お礼

凄い!!! ありがとうございます!

関連するQ&A

  • 【エクセル】セル内の右側のみ半角スペース削除

    セル内にある半角スペースのうち、右側にあって、文字に囲まれていないものを一括削除する方法をさがしています。 例)※␣と?は半角スペース。?のみを削除する。       列A 行1 test01??? 行2 test02␣01???? 行3 ␣test03␣114? 宜しくお願いします。

  • 秀丸で余分なスペースを削除したい

    EXCELデータをテキストデータに変換するため、ファイルを全範囲指定してEXCELから秀丸にコピペしました。 EXCELデータを作成する際に入ってしまっている余分なタブやスペースを削除したいと思っています。 タブの方は「置換」機能で「\t」→「 」(スペース)とすることで削除することができました。しかし、複数個の連続スペースを1個の改行に変換する方法が分かりません。「置換」欄は「\n」と入れれば良いと思うのですが、「検索」欄で「2個以上の連続スペース」を指定するにはどうすれば良いでしょうか?宜しくお願い致します。

  • セル内、スペース位置で改行

    宜しくお願いします。 A列に品名があり、途中に半角スペースが有るものと無いものが混在しています。スペースの場所は色々です。 スペースが有るものについて、セル内での改行をしています。(手動) データ自体が他のシートからのコピー&ペーストのため回数と量が多いのでVBAでの処理をと思ったのですが、改行位置の指定をどうしたらいいのか分かりません。 申し訳ありません、ご教授下さい。

  • エクセル:スペースの削除(連続するセル)

    全角で4文字分スペースをあけ、その後 文字を入力してあるセルがひとつの列に 数百行あります。 スペースをすべて削除し、左詰めで文字を 別の列に表示させたいと思います。 ○○○○M55 ○○○○N987   ↓ M55 N987 行数がかなり多いので、関数等を使い、 オートフィルで一気に片付けたいのですが、 何か良い方法はないのでしょうか?? 教えてください よろしくお願いします!!

  • マクロにて空白のセルを一括して消去でなく削除したい

    空白のセルを一括して、空白セルについた色も含めてマクロで全て削除したい。 現在のデータ(仕様)について 1.Sheet2に列ごとにセルに色をつけ、データもあるとします。 2.A列10行・B列6行・C;列18行というように、列によってデータの入った範囲が違います。 3.どの行も途中に空白セルはなく、詰めたデータです。 以上です マクロで一括処理したいと思いますが、このようなことができるコードを教えて頂けませんか。よろしくお願いします。

  • セル範囲と図形を指定してVBAで削除するには?

    エクセルで一枚のシートに複数のオートシェイプ(○、△、□)を使用したものがあります。 オートシェイプを使用しているセルの範囲は(A1:G20)と(AP1:AX20)の二箇所なのですが、 VBAで(A1:G20)の範囲にあるオートシェイプ(○のみ)を削除する事はできますか? (A1:G20)の範囲にあるオートシェイプは全体がこのセル範囲に入っています。 手動で、オブジェクトの選択で範囲指定をした後削除という方法もあるのですが この削除の作業の前後に他のVBAを使用しているので、 VBAで削除が出来ればと思います。 いろいろ検索したのですが、セル範囲もしくは図形のいずれかを指定して 削除する方法はあったのですが、両方を指定してのVBAがわかりませんでした。 よろしくお願いいたします。

  • 特定条件に該当する行を全て削除するVBAのプロシージャ

    お世話になります。(質問を書き換えました、前回ご対応いただいた方にはお詫び申し上げます) プログラムから出力されたレポート(エクセル形式)の不要な行をフィルタ等で抽出し、削除したいのですがどのようにVBAのプロシージャを書けばよろしいのでしょうか? 具体的には 1:[D列]の"空欄"もしくは"---"をで始まるセル 2:[G列]の空欄のセル 3:[H列]のGで始まるセル のいずれかに当てはまる行を全て削除したいのです。出されるレポートの総行数は毎回異なります。(自動記録では違うデータのレポートに対応できません)行数は毎回変わりますが100~200行くらいです。 毎日の作業ですので、出来ればVBAでマクロ化したいのですが。 自動記録でフィルタの設定までは出来ても、その後の行の削除をどう指定すればよいのかアイデアが浮かびません。抽出された行のA列にコメントを付して、その後コメントを付した行を削除しようとも考えましたが、どう書けばいいのか。。。 ちなみに全ての行に値が入っている列はありませんので、D列のみ全てのセルに手動で"1"を入力しようとも思っております。 よろしくお願いいたします。

  • 一括でセル削除 VBA エクセル

    B1からZ100にランダムに値(文字や数字)が入ってます。このうち、空白セルを削除して左に寄せたいのですが、VBAで一括でできますでしょうか?

  • エクセルVBA 不要行の削除について

    皆さんこんにちは。 お忙しいところ恐れ入ります。 以下の内容をVBAで実行したく色々やってみたのですが、思うように動きません。 もしお分かりになる方がおられましたらご教示の程ねがえませんでしょうか? 1.A列に”無作為な数値(例えば1から100)”と”空セル”がランダムに並んでいる。 2.このA列に、指定した数値(例えば3,7,15,23,50,88など色々)があった場合、  その指定した数値が書かれている行のみを行ごと削除したい。 以上です。 お忙しいところ恐れ入りますが、どうぞよろしくお願いいたします。

  • エクセルでスペースのみが入ったセルを除いてCOUNTA関数を使うには?

    自分で作成したシートではないのでよくわからないのですが、データが無いセルにスペースキーで空白が入っているようです。 ある列のデータ(0001とか0028とかの頭が0の文字列の数字)の数を取得しようとしたのですがスペースのセルまで集計されてしまいます。 しかたなく空白を置換えで削除すると、0001は1に化けてしまいます。 スペースを入れないデータを下さいと頼んだのですが、ホストコンピュータから何かのソフトでエクスポートしたエクセルファイルらしく、そういう操作は出来ないと断られてしまいました。 頻繁にあることなのでスペースを削除せず、且つスペース以外の空白でないセル数を取得するにはどのような関数を用いればよいのでしょうか?

専門家に質問してみよう