
No.8ベストアンサー
- 回答日時:
やはりフォントではなくセルの色だったんですね。
とんだ回り道をしてしまいました。で、こんどは新条件登場ですか。
確認です。
データはZ列以降には入っていませんね?
データは4001行以降には入っていませんね?
A~D列のどれか一つでもセルに色がある行は抽出するのですね?
そうであれば以下で試してください。
今度は、上記の条件に合致するものを並べ替えで上にもってくるやり方です。
Sub IROTEST3()
For i = 1 To 4000
For x = 1 To 4
If Cells(i, x).Interior.ColorIndex <> xlNone Then Cells(i, 27).Value = 1
Next x
Next i
Range("A1:AA4000").Select
Selection.Sort Key1:=Range("AA1"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin
Range("AA:AA").ClearContents
End Sub
この回答への補足
ヤッター!大成功です。ほんとに遠回りさせてしまいました。説明不足ですみませんでした。さあ仕事頑張るぞー!これを機に未知のVBA?マクロ?を少し勉強してみようかなあと・・・でもさっぱり???です。皆さんはどのようにして覚えていかれたのでしょう?ほんとにありがとうございました。
補足日時:2004/04/21 14:18No.7
- 回答日時:
No2~5です。
行の色って、ひょっとしてフォントではなくセルの色のことですか?!
それだったらとんだ勘違いをしていました。
以下は、セルに色をつけてあるものだけをB列に転記するVBAです。
Sub IROTEST2()
n = 1
For Each c In Range("A1:A4000")
If c.Interior.ColorIndex <> xlNone Then
Cells(n, 2).Value = c.Value
n = n + 1
End If
Next
End Sub
この回答への補足
ごめんなさい返信がおそくなりました。あの~NO7で成功はしましたが・・・私の説明が少なかったですのでもう一度お願いいたします。一行にはデータがY列まで入ってます。Y列までの内、色はABCD列につけてます。この結果ではB列にA列の色つきのデータのみが順次表示されB列からは結果以前のデータで結果的にはデータが狂ってしまいます最初の質問的には成功だと思いますがA列からY列まですべてが順次移動できるようにはできないでしょうか?よろしくお願いいたします。ペコリ
補足日時:2004/04/21 11:47No.6
- 回答日時:
同じくVBAですが、色を付けていない行を削除する方法でどうでしょう。
色は、文字色ではなく、パターン(セルの色付き)の方で考えています。(1)シートのコピーをする。
(2)下記を実行する。
Sub test03()
cl = "n"
For i = 20 To 1 Step -1
For j = 1 To 10
If Cells(i, j).Interior.ColorIndex = 6 Then
cl = "y"
Else
End If
Next j
If cl = "n" Then
Rows(i).EntireRow.Delete
End If
cl = "n"
Next i
End Sub
色付きのセルの行のみ残ります。
(注意)For i = 20 To 1 Step -1の20は最下行の行数
で置き変える。また
For j = 1 To 10の10は列番号の左(A列)より何番目までデータがあるかで変える。J列までなら10、O列までなら15に変える。
色付きであるなら、
If Cells(i, j).Interior.ColorIndex = 6 Thenは
If Cells(i, j).Interior.ColorIndex <> xlAutomatic
Thenにする。
この回答への補足
回答ありがとうございます。知識がなにもなくて説明のとおり20を4000(行)に10を25(Y列)にその下の行は最後の説明をコピペしてマクロの実行をしましたが何も変わらなかったです。再度教えてください。お願いいたします
補足日時:2004/04/21 13:46先ほど新たにお願いをいたしましたがshiShishishiさんの回答で解決いたしましたので締め切りたいと思います。ありがとうございました。また教えてください。
No.5
- 回答日時:
了解です。
黄色以外の「色なし」とは「自動」ということですね?それならこれでどうだあ~っ。
もちろんNo5のみのコピペでいいですよ。
前にコピペしたのは消してくださいね。
だんだん自信がなくなってきました。(笑)
Sub IROTEST()
n = 1
For Each c In Range("A1:A4000")
If c.Font.ColorIndex <> xlAutomatic Then
Cells(n, 2).Value = c.Value
n = n + 1
End If
Next
End Sub
No.3
- 回答日時:
>A列がそっくりB列にコピーされただけ
おや、それはこまりましたね。
でもVBAが動いたことだけは確認できました。(笑)
それではこれで試してください。フォントはただの黄色なんですね?
それからさっきのではA列を上から下まで見るので時間がかかりすぎますね。とりあえず500行めまでにしてみましたが、もっとデータがあるのであればA500を変えてください。
Sub irotest()
n = 1
For Each c In Range("A1:A500")
If c.Font.ColorIndex = 6 Then
Cells(n, 2).Value = c.Value
n = n + 1
End If
Next
End Sub
この回答への補足
行は4000あるので500を4000に変えて実行しましたが今回は変化なしでした。no3のみのコピペでよかったのですよね。色は他につけてたところは色ナシにして黄色のみにしたのですが・・・すみませんまたよろしくお願いいたします。
補足日時:2004/04/19 16:19No.2
- 回答日時:
お急ぎということなので、VBAでの一発回答を。
A列にデータが入っていて、その中の色つきのセルのデータのみB列の上から順番に表示させる方法です。
失敗するとまずいのでまずはバックアップをとってからテストしてみてください。
1.Alt + F11
または、[ツール] メニューの [マクロ] をポイントし、 Visual Basic Editorをクリックします。
2.Visual Basic Editor ウィンドウのメニューから、
[挿入]→[標準モジュール] をクリックします。
3.表示されたコードウィンドウに以下のマクロコード(SubからEnd Subまで)をコピペします。
4.ワークシートに戻り、[ツール] メニューの [マクロ] →「マクロ」で今貼り付けたマクロ名(irotest)を選択して、実行。
Sub irotest()
n = 1
For Each c In Range("A:A")
If c.Font.ColorIndex <> 0 Then
Cells(n, 2).Value = c.Value
n = n + 1
End If
Next
End Sub
この回答への補足
実はマクロもVBAも全く知識なく一応コピペでA列に色つきを移動させて実行してみましたがA列がそっくりB列にコピーされただけで上から順番にも表示されませんでした。どこが悪かったのでしょうかよろしければ再度お願いいたします
補足日時:2004/04/19 14:11No.1
- 回答日時:
【エクセル技道場】
http://www2.odn.ne.jp/excel/
上記から名前定義の23名前定義で4.0マクロ関数を使う
を参照してください
これでなければVBAになると思います。
参考URL:http://www2.odn.ne.jp/excel/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) Excelの担当者割当の表から担当者を抽出する方法 4 2022/07/16 14:05
- Excel(エクセル) Excelの数式についての質問 1 2022/10/31 15:50
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Excel(エクセル) Excel>マクロ>特定のセルで同じ情報が登録されている行を1行にまとめたい(文字連結) 6 2023/01/05 16:30
- Excel(エクセル) Excelでのデータ管理 6 2022/12/24 09:33
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCELにて複数列を同条件(色)で一括フィルタリングする
Excel(エクセル)
-
VBマクロ 色の付いたセルを含む行をコピーしたい。
Visual Basic(VBA)
-
複数シートの色付きセルがある行を別シートに抽出
Excel(エクセル)
-
-
4
Excel VBA で色付きのセルの値を取得する
Excel(エクセル)
-
5
Excelのセルの色を変えた行(すべてのシート)を別シートに抽出したい
Excel(エクセル)
-
6
セルに背景色がある行を別シートにコピー
その他(Microsoft Office)
-
7
エクセル:色の付いたデータをまとめて抽出したい。
Excel(エクセル)
-
8
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
9
VBAで色の付いているセルの行削除
Excel(エクセル)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
セル色なしの行一括削除
その他(プログラミング・Web制作)
-
12
【VBA】特定の値が入った行をコピーして別シートに貼り付ける方法をおしえていただきたいです。
Excel(エクセル)
-
13
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
14
特定の色のついたセルを削除
Visual Basic(VBA)
-
15
複数シートに色付きセル(条件つき書式で設定済み)の行を別シートに抽出
Visual Basic(VBA)
-
16
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
-
17
色付き行の非表示について
Excel(エクセル)
-
18
Excel 書式を関数で判断。
Excel(エクセル)
-
19
【Excel】 セルの色での判断はできますか?
Excel(エクセル)
-
20
背景色の有無を判断をして別のセルに「1」と入力
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのフィルター後の一番上の...
-
エクセルで特定の文字列が入っ...
-
【Excel関数】UNIQUE関数で"0"...
-
特定の文字がある行以外を削除...
-
エクセル マクロ オートフィ...
-
[EXCEL]ボタン押す→時刻が表に...
-
excel セルの結合を条件付で自...
-
罫線の斜線を自動で引くマクロ
-
Excel グラフのプロットからデ...
-
このような複雑な表をワードで...
-
エクセルのセルに指定画像(.jpg...
-
セルの色によって条件文をつけ...
-
エクセル 上下で列幅を変えるには
-
Excelで乱数を使って、100個の...
-
結合されたセルをプルダウンの...
-
excel 小さすぎて見えないセル...
-
Excel ウインドウ枠の固定をす...
-
EXCELで最後の行を固定
-
excel 同じ番号のデーターを横...
-
ピボットテーブルで文字列…
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【Excel関数】UNIQUE関数で"0"...
-
特定の文字がある行以外を削除...
-
エクセルで特定の文字列が入っ...
-
エクセル 上下で列幅を変えるには
-
エクセル マクロで数値が変っ...
-
[EXCEL]ボタン押す→時刻が表に...
-
excel 小さすぎて見えないセル...
-
エクセル マクロ オートフィ...
-
Excel グラフのプロットからデ...
-
Excelのフィルター後の一番上の...
-
結合されたセルをプルダウンの...
-
EXCELで最後の行を固定
-
excelのデータで色つき行の抽出...
-
アクティブになっている行をマ...
-
連続データが入った行の一番右...
-
Excel ウインドウ枠の固定をす...
-
エクセルのセルに指定画像(.jpg...
-
エクセルVBA 最終行を選んで並...
-
VBAで色の付いているセルの行削除
-
Excelでカタカナ・ひらがな・英...
おすすめ情報