[[20150406150132]] 『数字を立てたものに対しての文字の抽出』(エクセル) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『数字を立てたものに対しての文字の抽出』(エクセル)

	B	C	D	E	F	G	H	I	J	K
2	あ	い	う	え	お	か	き	く	け	こ
3										
4										
5										
6										
7										
8										
9	5	1								
10	0									
11	0									
12	0									
13	8	2				12				

B9:K9に数字を立てたもののみ別セル(シート)に
たとえば、B:9に数字5を入力した場合の文字のみを抽出する方法
この場合B:9とC:9に数字入力があるので
別セルに「あ」と「い」を抽出したいのですがどなたかご教授ください…。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


ビットと言っていますが、ただの文字ですよね? あと、別セルとは具体的にどこ? 出力は1文字1セル? 指定のなかった分は詰める必要は?

文字があったら1行目の文字をセット。それを縦横ループさせて1セルずつ処理。そんな簡単なマクロで実現できそうですよ。
ご自分で作ってみては?
(???) 2015/04/06(月) 16:04


ただの文字です。文字というか数字です。
ちょっと説明がおかしかったのでもう一度。
B:9からK:9までの間で、数字が入力されたものをピックアップして
たとえば、別シートのE18〜E41に順番に出力させる。
出力させるものは、上の図からいえばB:2に「あ」とありますが、これはあくまでもサンプル的なものなので、B:2の文字列をE18に、というような感じです。
B:9に数字2 D:9に4 H:9に3と入力した場合、
E18にあ
E19にう
E20にき となるようにくみたいのです…。
(エクセル) 2015/04/06(月) 16:21

セルは詰めるのね…。同じ列で複数行指定されていた場合は、全部表示で良いのかな?

 Sub test()
    Dim wkOut As Worksheet
    Dim R As Range
    Dim i As Long
    Dim iR As Long

    Set wkOut = Sheets("Sheet2")
    iR = 18

    For Each R In Range("B9:K" & Cells(Rows.Count, "B").End(xlUp).Row)
        If R.Value <> 0 Then
            wkOut.Cells(iR, "E").Value = Cells(2, R.Column).Value
            iR = iR + 1
        End If
    Next R
 End Sub
(???) 2015/04/06(月) 16:47

 Sub test()
    Dim r As Range, x, n As Long
    n = 18
    For Each r In Range("b9", Range("b" & Rows.Count).End(xlUp)).SpecialCells(2, 1)
        x = Filter(Evaluate("if(isnumber(" & r.Resize(, 10).Address & "),b2:k2,char(2))"), Chr(2), 0)
        Sheets("sheet2").Cells(n, "e").Resize(UBound(x) + 1).Value = Application.Transpose(x)
        n = n + UBound(x) + 1
    Next
End Sub
(seiya) 2015/04/06(月) 21:44

 数式やけど。。。

 Sheet1の9行目 ⇒ Sheet2のE列
 Sheet1の10行目 ⇒ Sheet2のF列

 ・・・

 として

 Sheet2のE18に

 =IF(COUNT(INDEX(Sheet1!$B$9:$K$15,COLUMN(A1),0))<ROW(A1),"",INDEX(Sheet1!$2:$2,SMALL(INDEX((INDEX(Sheet1!$B$9:$K$15,COLUMN(A1),0)="")*10^16+COLUMN($B1:$K1),),ROW(A1))))
 
(GobGob) 2015/04/07(火) 08:02

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.