Win2000でEXCEL2000を使用いたしております。下記のことを実現
させようと、色々試してみたのですがうまくいかず、ご質問させ
て頂きました。

A列に住所が入力されております。そこでB列に地域ブロック
(関東・九州等)を入力するのですが、A列の住所を参照し自動
的にB列に入力になるようにしたいと思っております。例えは、
住所中に"東京都"があれば"関東"や、"福岡県"があれば"九州"な
どです。

関数で、COUNTIF と VLOOKUP を使えば何とかなるだろうと、簡単
な気持ちで取り掛かったのですが、なかなかうまくできません。
(^-^!)どうかよろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

例えば、F1から下に向かって都道府県名を入れます。


隣のG1には =LEFT(F1,3) としてコピーし全て3文字にします。H1から下に向かって対応する地域ブロックを入れます。

A1に住所があれば、B1には
=VLOOKUP(LEFT(A1,3),$G$1:$H$47,2,FALSE)
とすればでるでしょう。3文字で照合してまずい県はない?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

おバカな私なので、一番スッキリしているnishi6様のご回答を
参考にさせていただきました。

3文字照合でまずいことも無く、うまくいきました。
ありがとうございました。

お礼日時:2001/07/18 10:37

NO4で回答した、OMUSUPAです。


「範囲」作り方を忘れてしまいました。

F列   G列(この列番号はたとえです。)
青森県 東北



沖縄県 九州
とリストを作ってください。
そして、「範囲」のところで、ドラッグしてください。
    • good
    • 0

A1に住所が入っているのであれば、


B1に下の式を入れて見てください。

=VLOOKUP(IF(OR(MID(A1,3,1)="県",MID(A1,4,1)="県"),LEFT(A1,FIND("県",A1)),LEFT(A1,3)),$D$7:$E$8,2,0)

式の後の方の
$D$7:$E$8は、Vlookupの「範囲」です。
上の式をコピーをしてとりあえず試してください。
コピーのショートカットは範囲指定をして「CTRL+C」です。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

見たことの無い関数があったので、ヘルプで確認しながらの作業でした。
この機会のおかげで、大変勉強になりました。ありがとうございました。

また何かございましたら、よろしくお願い致します。

お礼日時:2001/07/18 10:41

 手元に都道府県リストがあったので、


貼り付けてみますね。
うまくCSV形式になるといいですが。

北海道
青森県
秋田県
岩手県
山形県
宮城県
福島県
群馬県
栃木県
茨城県
埼玉県
千葉県
山梨県
東京都
神奈川県
新潟県
長野県
富山県
石川県
福井県
岐阜県
静岡県
愛知県
三重県
滋賀県
京都府
大阪府
奈良県
和歌山県
兵庫県
鳥取県
岡山県
島根県
広島県
山口県
香川県
徳島県
愛媛県
高知県
福岡県
佐賀県
長崎県
大分県
熊本県
宮崎県
鹿児島県
沖縄県
    • good
    • 0

 お待たせしました♪


いささか面倒かも知れませんが、
C列・D列に
C列;地域ブロックコード(任意の数字、例;関東は3)
D列;地域ブロック名(関東等)
のリスト

E・F列に
E列;都道府県名
F列;各都道府県が対応するC列の数字
   (例;東京都だったら3)
のリストさえ作ってしまえば、
=VLOOKUP(VLOOKUP(LEFT(A1,(IF(ISERROR(FIND("県",A1)),3,FIND("県",A1)))),$E$1:$F$47,2,0),$C$1:$D$7,2,0)

*地域ブロックが7つの場合

 でいけます。
Find関数をつかったのは、
神奈川県とう、4文字県名に対応するためです。
    • good
    • 0
この回答へのお礼

早々のご回答、本当にありがとうございました。感謝いたしております。
これで社内での私の評価も上がっちゃいます。(^-^!) oresama様をは
じめ、ご回答くださった方々のおかげなのに。。。

本当にありがとうございました。私も、回答して恩返ししていきたいと
思います。

ではでは。

お礼日時:2001/07/18 10:31

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QエクセルでB列の数値がA列(A1:A10)の範囲に存在するかどうかを知りたい

こんばんは。
エクセルでこのようなことができるのかどうか分からないので、教えてください。

B列の数値がA列(A1:A10)の範囲に含まれる数値なら○、含まれない数値なら×と、C列に表示したいのですが、エクセルでそのようなことはできるのでしょうか。
できるのであれば方法を教えていただけますでしょうか。
よろしくお願いいたします。

<<最終的な結果は以下のように表示したいです>>

  A B C

1 12 19 ○

2 15 20 ○

3 19 28 ○

4 20 30 ×

5 23 34 ○

6 28 35 ×

7 32 38 ×

8 34 39 ○

9 39

10 40

Aベストアンサー

セル C1 に式 =IF(COUNTIF(A:A,B1),"○","×") を入力して、此れを下方にズズーッと複写

QA列とB列の重複を抽出したいのですがA列とB列の値は一部だけ同じ文字です。ご教示お願いします。

エクセル初心者です。重複を見つけるのが仕事です。いろいろやってみたのですがうまくできません。
お知恵をお貸しください。

A列には企業名が入力されています。
B列にも企業名が入力されていますが全く同じ文字ではないのです。

たとえばこういうことです。
A1 (有)雪見酒      B1  雪見
A2 株式会社豪雪地帯   B2 (株)豪雪地帯
A3 ゆきかき本舗     B3 (有)ゆきかき本舗

A列にある企業名とB列にある企業名が同じであればセルを塗りつぶすか○を表示させるように
したいのです。
重複を見つけるのが目的なので、ほかの方法でもかまいません。
すみません、A列のセルとB列のセルが全く同じ名前ならば重複が見つけられたのですが
ここから先がどうしてもわからないのです。。。
申し訳ありませんがどうか教えてください。。。

Aベストアンサー

No4です。以下のマクロを標準モジュールへ登録してください。
--------------------------------------------------
Option Explicit
Public Sub 重複チェック()
Dim maxrow1 As Long
Dim maxrow2 As Long
Dim row1 As Long
Dim row2 As Long
Dim nameT1() As String
Dim nameT2() As String
Dim t1, t2 As Variant
t1 = Time
maxrow1 = Cells(Rows.Count, "A").End(xlUp).row '最大行取得
maxrow2 = Cells(Rows.Count, "B").End(xlUp).row '最大行取得
ReDim nameT1(maxrow1)
ReDim nameT2(maxrow2)
Range("C1:" & "D" & maxrow2).Value = ""
Call makeTable(nameT1, "A", maxrow1)
Call makeTable(nameT2, "B", maxrow2)
For row1 = 1 To maxrow1
For row2 = 1 To maxrow2
If Cells(row2, "C") = "" Then
If Mymatch(nameT1(row1), nameT2(row2)) = True Then
Cells(row2, "C").Value = "○"
Cells(row2, "D").Value = row1
End If
End If
Next
Next
t2 = Time
MsgBox ("チェック完了 処理時間=" & Minute(t2 - t1) & "分" & Second(t2 - t1) & "秒")
End Sub
'余分な文字を削除した結果をテーブルに格納する
Private Sub makeTable(ByRef nameT() As String, ByVal col As String, ByVal maxrow As Long)
Dim row As Long
Dim ary As Variant
Dim name As String
Dim i As Long
ary = Array("㈱", "(株)", "株式", "(有)", "有限", "会社")
For row = 1 To maxrow
name = Cells(row, col).Value
For i = 0 To UBound(ary)
name = Replace(name, ary(i), "")
Next
nameT(row) = name
Next
End Sub
'企業名が一致かどうか判定する
Private Function Mymatch(ByVal name1 As String, ByVal name2 As String) As Boolean
Mymatch = False
Dim pos As Variant
pos = InStr(1, name1, name2, vbTextCompare)
If pos > 0 Then Mymatch = True
End Function
-----------------------------------------------------
一致の精度が悪ければその旨補足してください。
(一致すべきものが一致しない、一致してはいけないものが一致している)
100%解決できる保証はありませんが、多少のチューニングは行います。

No4です。以下のマクロを標準モジュールへ登録してください。
--------------------------------------------------
Option Explicit
Public Sub 重複チェック()
Dim maxrow1 As Long
Dim maxrow2 As Long
Dim row1 As Long
Dim row2 As Long
Dim nameT1() As String
Dim nameT2() As String
Dim t1, t2 As Variant
t1 = Time
maxrow1 = Cells(Rows.Count, "A").End(xlUp).row '最大行取得
maxrow2 = Cells(Rows.Count, "B").End(xlUp).row '最大行取得
ReDim ...続きを読む

Q(初心者です)VBAでA列がBかつC列がDならE列がF

VBAでA列がBかつC列がDならE列がFという風なマクロを書きたいです。

Sub tesuto()


If Columns("A").Value = "B" And Columns("C").Value = "D" Then
Columns("E") = F
End If

End Sub

などめちゃくちゃにしか分かりません。
勉強もろくにしていない初心者の不躾な質問で申し訳ありませんが、教えていただけますとうれしいです。

Aベストアンサー

こんにちは!

ループさせるのが一番オーソドックスだと思います。
一例です。

Sub Sample1()
Dim i As Long
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Cells(i, "A") = "B" And Cells(i, "C") = "D" Then
Cells(i, "F") = "E"
End If
Next i
End Sub

※ 1行目~A列最終行までループさせています。m(_ _)m

QA列にくだもの名 B列に色 C列にに指定の単語を入力する方法を教えてください

エクセル2010 Windows10 を使用しています。
例えば、A列にくだものの名前 B列に色 をドロップダウンリストで選べるようにするとします。
A列からイチゴ、B列から赤を選んだ時、C列に栃木
A列からみかん、B列からグリーンを選んだ時、C列に和歌山・・・
などと、指定の単語を入れたいのですが、どうしたらいいのか教えてください。
同じような質問が出ているのかもしれませんが、探せず質問させていただきました。

Aベストアンサー

A列とB列の組み合わせによってC列を抽出するのであれば、
例えばE列にくだもの、F列に色、G列にそのくだものと色の組み合わせによる都道府県。
という一覧を作ります、
同じくだものと色の組み合わせは存在しないものとします。

そしてD=E&"-"&F(D2なら=E2&"-"&F2と入力すると言う意味です)
とすることで、D列にはくだものと色を用いたID的なものが表示されます。

C=VLOOKUP(A&"-"&B,D:G,4,FALSE)
(同様にC2なら=VLOOKUP(A2&"-"&B2,D:G,4,FALSE)です。D:Gは列全体なので行番号不要です)
これにより、A列とB列を組み合わせたものに一致するデータをD列から探し、一致する行のG列を表示できます。

QB列の値のよってA列のセルの色を変える

 A1セルに“No.1”と入力されていて、B1セルが“○”のとき、A1セルに色を自動的につけるようにするにはどうしたらよいのでしょう?
 また、B1セルが“×”の場合には、“○”のときとは異なる色をつけるようにするにはどうすればいいでしょうか。

Aベストアンサー

条件付き書式 というのを使いましょう。

メニューバーの書式>条件付き書式

にて、

数式が =B1="○" 

として、書式の欄を好きに設定してください

そして、追加 というボタンを押し、条件を増やし

数式が =B1<>"○" 

として違う色の書式を設定してあげればいいです


人気Q&Aランキング

おすすめ情報