![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
No.8
- 回答日時:
◆数字+カタカナ であれば
B1=LOOKUP(10^10,LEFT(A1,COLUMN(1:1))*1)
C1=SUBSTITUTE(A1,B1,)
◆数字+カタカナ+数字 で
★カタカナの前の数字の抽出
B1=LOOKUP(10^10,LEFT(A1,COLUMN(1:1))*1)
★カタカナのみ抽出(ただし、カタカナは連続していることが条件です)
C1=LEFT(REPLACE(A1,1,MIN(INDEX(FIND(CHAR(ROW($9506:$9587)),A1&CHAR(ROW($9506:$9587))),))-1,),SUMPRODUCT(--(CHAR(ROW($9506:$9587))=MID(A1,COLUMN(1:1),1)))+SUMPRODUCT(--("ー"=MID(A1,COLUMN(1:1),1))))
★数字+カタカナ+数字 から、カタカナを除いた数字
B1=RIGHT(SUM(MID(0&A1,LARGE(IF(ISERR(-MID(A1,ROW($1:$50),1)),,ROW($1:$50)),ROW($1:$14))+1,1)*10^(ROW($1:$14)-1),10^14),MIN(14,COUNT(-MID(A1,ROW($1:$50),1))))
★この式は「配列数式」です。式を入力後、Ctrl+Shift+Enter をおして、式を確定させてください。
★確定すると、式の両端に{ }がつきます。
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_05.png?8acaa2e)
No.7
- 回答日時:
#1,#2の回答者様も書かれていますように、この問題は、なんらかの条件設定が必要です。
例えば、数字の部分が固定長(2桁とか、3桁とか決まりがある)ならば、#1様の回答が簡潔ですし、#2様が書かれてる条件におきましては、#2様の回答が適切でしょう。
私なりにご質問の意図を、「文字列(例:12カローラ)の先頭から、数字が続く限りはその数字(例:12)をB1セルに記述し、数字ではない文字が現れた時点で、残りの文字列(例:カローラ)をC1セルに記述する」と解釈致しました。
その解釈に基づいて、以下ではExcelのユーザ関数を紹介します。
下のユーザ関数'NumLen'というのは、先頭から続く数字の桁数を返すものです。
ユーザ関数の具体的な作成につきましては、参考URLなどを参考になさってください。
Public Function NumLen(sSrc)
Dim i As Integer
Dim iLen As Integer
iLen = Len(sSrc)
For i = 1 To iLen
If IsNumeric(Mid(sSrc, i, 1)) = False Then
Exit For
End If
Next
NumLen = i - 1
End Function
これをVisualBasicEditorで作成した後、
B1セルに、
=LEFT(A1,NumLen(A1))
C1セルに、
=RIGHT(A1, LEN(A1)-NumLen(A1))
と入力してください。
以上です、とダラダラ参考意見を書いていますうちに、#4様によって簡潔な回答がなされていました。
#4様の回答は、私と同様の解釈によるものです。
わざわざユーザ関数を作成するより、ずっと簡潔です!
ただ一点、C1セルにSUBSTITUTE(A1, B1, "")を用いますと、下記の場合に不具合が発生します。
例:A1=12カローラ1200と入力しますと、B1には、"12"、C1には、"カローラ00"と表示されてしまいます。
ですので、C1セルにはSUBSTITUTEを用いない方がいいでしょう。
参考URL:http://www.excel.studio-kazu.jp/lib/e1iw/e1iw.html
No.5
- 回答日時:
例データ
123カローラ 3
13746クラウン5
123567ロゴ6
2345セルシオ4
前半部の数字桁を割り出し。
全角数字も1桁と考える点で、#2の条件より広がっている。
しかし後半部に数字が来ると狂う。
=SUM(IF((MID(JIS($A1),ROW(A$1:A$10),1)>="0")*(MID(JIS($A1),ROW(A$1:A$10),1)<="9")*(MID(JIS($A1),ROW(A$1:A$10),1)<>""),1,0))
と入れて、SHIFT+CTRL+ENTERの3つのキーを同時押し。配列数式。
結果
上記のとおり。
ややこしい式ですみません。
小生は、配列数式男ですので。
もう少し簡単な式が以前出ていたように思いますが思い出せない。
ーー
VBAでユーザー関数を作る方が簡単なようです。
No.4
- 回答日時:
B1: {=LEFT(A1,MATCH(TRUE,(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>="A",0)-1)} (配列数式)
C1: =SUBSTITUTE(A1,B1,"")
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルで月末、月初の判定をしたい。 4 2022/05/18 23:22
- Excel(エクセル) エクセルで教えて下さい。 2 2022/05/18 13:00
- Excel(エクセル) エクセルで、 A1セルに「A」という値、 B1セルに「B」という値が入っています。 どちらも表示形式 5 2023/02/22 23:05
- Excel(エクセル) Excel 関数 数式 について 2 2022/09/02 21:45
- Excel(エクセル) エクセルの関数(式)を教えてください。 1 2022/09/27 09:28
- Excel(エクセル) ある範囲のセルに何を入力すると、別のセルに○を表示させる 3 2022/04/05 15:51
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
- Excel(エクセル) 【再度】Excelの関数について教えてください。 4 2023/07/28 13:06
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
Excel セル内の文字と数字をわけるには??
Excel(エクセル)
-
数値とアルファベットに分ける(エクセル)
Excel(エクセル)
-
Excelの1つのセルに入力されたアルファベットと数字を分けるには?
Excel(エクセル)
-
-
4
文字列から英数字のみを抽出する関数
Excel(エクセル)
-
5
漢字と数字が混じった文字列を漢字と数字に分けたい
Excel(エクセル)
-
6
エクセルで数字とアルファベットと文字列を分割する方法
Visual Basic(VBA)
-
7
エクセルでアルファベットと日本語の文字列を分割する方法
Excel(エクセル)
-
8
エクセルでアルファベットか数値の判定をしたいのですが
Excel(エクセル)
-
9
EXCELで、漢字のみ抽出する式を教えてください。
Excel(エクセル)
-
10
エクセルでセルの中身が漢字かどうか識別する方法は?
Excel(エクセル)
-
11
エクセルで文字と数字が入っているセルを足すには
Excel(エクセル)
-
12
EXCELで=より左の文字を一括で削除したい
Excel(エクセル)
-
13
あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように
Excel(エクセル)
-
14
エクセルで数式の答えを数値として参照したい
その他(Microsoft Office)
-
15
Excelでカタカナ・ひらがな・英数字の抽出
その他(Microsoft Office)
-
16
Excelで隣り合った場所を別々にグループ化したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELの散布図で日付が1900年に...
-
エクセルのツールバーから数値...
-
祝日と土曜、日曜の合計をカウ...
-
Excel分数の表示について
-
特定の文字列を含む、住所を抽...
-
Excelについての質問です。 B2...
-
文字2桁、3桁交じりの文字列...
-
Excelで表を作ったところに文字...
-
【マクロ】2回実行したら、エ...
-
【EXCEL】画像の黄色部分の抽出...
-
マイクロソフトのPADを使ってい...
-
絶対参照
-
マクロエクセルのブロック解除
-
在庫管理表に使うエクセルの関...
-
Excelピボットテーブルの1行目
-
エクセルのクイックアクセスツ...
-
DATE関数で現在の年齢を出した...
-
ユーザー定義関数をアドイン登...
-
職場の人から聞かれており、こ...
-
【マクロ】毎回、ファイル名が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報