• ベストアンサー

指定文字から、空白までを16進数→10進数に変換する関数

エクセルで、A1セルに下記が記載されています。 「タイトルテスト#7BC ☆☆☆」 この文字列で、7BCだけを抽出し、さらに10進数に変換してB1へ出力したいと考えています。 16進数の前には必ず#がついており、最後には空白があります。 ♯から空白までの文字を10進数に変換する関数を調べたのですが、私には分かりませんでした。 どなたかご教授お願いいたします。

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

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

> 下記のように#の前にスペースがあった場合、エラーとなってしまうのですが、何か良い方法はないでしょうか =HEX2DEC(MID(A1,FIND("#",A1)+1,FIND(" ",A1,FIND("#",A1))-FIND("#",A1)-1)) #以降のスペースを探すようにしました。 #から次のスペースまでの間をとりだして10進数に変換します。

その他の回答 (4)

回答No.5

#1です。 >下記のように#の前にスペースがあった場合、 >エラーとなってしまうのですが、何か良い方法はないでしょうか。 解決策は回答されていますが、16進数3桁限定をまず考えてみては? =HEX2DEC(MID(A1,FIND("#",A1)+1,3))

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

答えは既に出ていると思うが、式が長くなり、考えをまとめにくいのと、1歩づつ確認して、式を組み立てて、進めるために下記を勧めたい。 ーー A1からE1 タイトルテスト #7BC ☆☆☆」 9 13 7BC 1980 B1は #の位置を見つける =FIND("#",A1)  で9-->確認してOK C1は #以後の初出スペース =FIND(" ",MID(A1,B1+1,LEN(A1)-B1))+B1 で13-->確認してOK D1は 7BCを抜き出し =MID(A1,B1+1,FIND(" ",MID(A1,B1+1,LEN(A1)-B1))+B1-B1-1) 結果7BC-->確認してOK E1は 10進化 =HEX2DEC(D1) 結果 1980 ーーー E1かえら逆順に順にセル番地になっているところへ左のセルの 式で置き戻していく。 =HEX2DEX(MID(A1,B1+1,FIND(" ",MID(A1,B1+1,LEN(A1)-B1))+B1-B1-1)) B1の式は(作業列として使い)戻さないほうが良いと思うが。 ーー 検算 =7*16^2+11*16^1+12ーー>1980 ーー

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.2

=HEX2DEC(MID(A1,FIND("#",A1)+1,FIND(" ",A1)-FIND("#",A1)-1)) でいかがでしょう

tatewaki_K
質問者

お礼

ご回答ありがとうございます。 返事がおそくなってしまい申し訳ございません。 下記のように#の前にスペースがあった場合、エラーとなってしまうのですが、何か良い方法はないでしょうか。 「タイトル テスト#7BC ☆☆☆」

回答No.1

ツール アドイン [レ]分析ツール =HEX2DEC(MID(A1,FIND("#",A1)+1,FIND(" ",A1)-FIND("#",A1)-1)) エラー処理はしていません

tatewaki_K
質問者

お礼

ご回答ありがとうございます。 返事がおそくなってしまい申し訳ございません。 下記のように#の前にスペースがあった場合、エラーとなってしまうのですが、何か良い方法はないでしょうか。 「タイトル テスト#7BC ☆☆☆」

関連するQ&A

  • 指定した文字列が抽出できる関数

    Excelで、指定した文字列だけを抽出表示する場合、「文字列を先頭(左)から抽出する」などの関数は「LEFT関数」や「RIGHT関数」がありますが、位置の指定ではなく、文字列の中にある、特定の文字だけを指定して抽出してできる関数は何でしょうか? たとえば「ラーメン」「うどん」「そば」いずれかを「含む」文字列が入っているセルの中から、「うどん」のセルだけを抽出して表示するという場合です。

  • エクセルで文字数制限まで空白を入れる関数

    仕事にて、エクセルを使用しています。 とあるシステムにて、エクセルで入力した文字を読み込ませないといけないのですが 文字数が1つのセルにつき全角15文字(半角30文字)と決まっています。 例えば、【たこ焼き】という文字を入れたい場合、空白文字+たこ焼き=合計15文字にしたい場合、空白文字を合わせて全角15文字にできる方法を関数等使って できないでしょうか?数百件あるので、なんとかできる方法があれば、ご教授いただけたらと思います。

  • エクセルで空白文字の前後を入れ替えることってできますか?

    エクセルでひとつのセルにある文字列の中で、空白の文字列が間にある時、前後を入れ替えた文字列を作りたいのです。 例えば  UTADA HIKARU HAMASAKI AYUMI KURAKI MAI ・・・・・ を HIKARU UTADA AYUMI HAMASAKI MAI KURAKI ・・・ にしたいのです。 なるべく簡単な方法で変換したいのですが・・・・関数を使って出来ないでしょうか。または、マクロを使わないと出来ないでしょうか?(マクロはよく分からないので・・・) データ数が100件くらいあるので、上手い方法は無いものでしょうか?宜しくお願いします。

  • 複数列セルの文字を一行に変換しコピー

    こんにちは。下記イメージの複数列セルに入力されている文字を一行に変換しメモに出力すると同時に出力された一行の文字列をコピーした状態にしたいです。セルに記載された文字は「,」カンマで区切った状態で範囲はA3セルからA50位となります。また、セルが結合されていたり空白が存在したり様々です。大変申し訳御座いませんがご教授宜しくお願いします。 あああ → あああ,いいい,ううう,えええ,おおお・・・ いいい ううう  えええ おおお ・ ・ ・

  • エクセルで特定の範囲の文字列を抜き出したいのですが関数がわかりません。

    エクセルで特定の範囲の文字列を抜き出したいのですが関数がわかりません。 抽出の条件は「セルの中の【 】でくくられた部分」(【】も含む)です。 各セル内の文字列はすべてこの【】から始まる文章で構成されているのですが、 【】内の文字数はそれぞれ違うという状態です。 文字数が固定の場合の関数は思いつくのですが、異なる場合がよくわかりません。 よろしくお願いします。

  • 空白セル(関数入ってます)を印刷しない

    エクセルの初心者です。 印刷画面でちょっとやっかいなことが起きてしまいました。 空白セル(関数が入っています)が表示されて画面上でも、印刷後でも、空白が目立ち見にくく歯抜け状態です。 関数が入っていますが、どのような関数を付け足せば列が揃い、(列の上詰め)見栄え良く印刷できますか? 今入っている関数は文字が入っていたら表示、入っていなかったら空白というだけです。  宜しくお願いします。

  • 空白セルで区切られた文字列の種類を求める関数

    以下の条件を満たす excel関数がありましたら 教えてください。    A       B 1 りんご 2 みかん 3 りんご 4 なし 5 なし      3 ← 結果 6 7 なし 8 りんご 9 りんご     2 ← 結果 10 上記のようにA1からA10のセルに 文字列と空白が入っているとき、 空白で区切られたグループ内で、 文字列の種類が一体何種類になるのかを、 数えたいと思います。 ちなみに、関数はB列に入力したいのですが、 空白の一つ上のセルにだけ結果がでるように 表示させたいです。 説明不足でしたら申し訳ありません。 よろしくお願いいたします。

  • Excelの文字数が決まっていない文字列の抽出

    教えてください。Excelで、文字数の決まっていない文字列を抽出したいのですが、例えば、 セルA1 : プロジェクト1 簡単な文章 2352 PD_JOK セルA2 : プロジェクト13 複雑な文章列とは決まっていない 2453 AO_JKI ・・・・・・ というセルから、 プロジェクト名から、半角数字前までの文字数が決まっていない文字列「簡単な文章」や「複雑な文章~」をセルB列に抽出する方法を教えていただきたいのですが、 そして、半角数字後の半角英字「PD_JOK」をセルC列に抽出する方法も同時に教えてください。 万単位でデータがあるので、関数を使わないと難しいです。 よろしくお願い致します。

  • 空白セルの削除と重複データの加算のマクロ

    シート1の文字列のデータの0又は空白のセルを取り除いて、並んでいる文字列の左と真ん 中の数が重複しているデーターは左端の数を加算して別のシート2のC10からC100のセルに抽出できるマクロを教えて下さい。データーの0は関数で空白にしたいと思っています。 データの並び方はこのままで重複するデーターの加算と空白のセルの削除を一回のマクロで実行したいのです。  E列               空白を削除    0-4-1              0-4-1         2-3-2              2-3-2         2-2-3              2-2-(3) 0                 2-2-(1) 2-2-1              4-1-9 4-1-9              2-1-7 2-1-7              2-2-3 0                 2-3-(5)                (数式がある空白セル)   2-3-(1)            2-2-3              2-3-(4) 0                 0-4-1 2-3-5 2-3-1 2-3-4 0-4-1 シート2のB列10~100に抽出 0-4-1 2-3-2 2-2-4 4-1-9 2-1-7 2-2-3 2-3-10 0-4-1 このように抽出したいのです。

  • 区切り文字以降を16進数を10進数に変換するマクロ

    現在、下記のようなマクロを作成しようとしているのですが、私の知識では作成することができませんでした。 どなたか、お力添え頂けませんでしょうか。 作成しようとしているマクロは、まず ”aaaa:7BC” というような文字列があります。 ※「”」は含みません。 「:」以降の7BCを10進数に変換して任意のセルに入力したいのです。 イメージとしては添付の画像のような感じです。 マクロに詳しい方、ヒントだけでも頂けませんでしょうか。 よろしくお願いいたします。

専門家に質問してみよう