エクセル2000で化学式を大量に入力したいのですが、
現在はH2Oなどの数字部分をいちいち下付きに変更しています。
(かなり面倒です)
これをもっと簡単に入力する方法はないでしょうか?

出来れば「水」と入力して「H2O」と表示させたいのですが、
単語登録、VLOOKUP関数、入力規則(リスト)、オートコレクト
以上のものは全部試してみたのですが、
いずれも一部分だけの下付きは出来ませんでした。

セルをコピーすると出来るんでしょうけど、
他に方法があったら教えて下さい。
よろしくお願いします。

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

A 回答 (5件)

指摘のあったパターンと『小文字、2桁以上の数値』を可能にしました。


少し書き方を変えています。次を下付きにする文字と解除する文字を分けていますので、追加・修正は容易かと思います。標準モジュールに貼り付けます。

Public Sub ShitaTukiMoji()
  Dim rg As Range '選択した範囲
  Dim L As Integer '文字カウンタ
  Dim Shiki As String '化学式
  Dim maeKigo As String '数値の前の文字は元素記号?
  Dim sitatukiFlg As Boolean '下付にする、しない

  For Each rg In Selection
    Shiki = rg
    For L = 2 To Len(Shiki)
      '全角入力を考慮
      maeKigo = StrConv(Mid(Shiki, L - 1, 1), vbNarrow)

      Select Case maeKigo
        Case "A" To "Z", "a" To "z", ")"
          'この文字の次の数字は下付きにする
          sitatukiFlg = True
        Case "・", "(", "+", "-", "=", " "
          'この文字の次の数字は下付きにしない
          sitatukiFlg = False
      End Select

      If sitatukiFlg Then
        If IsNumeric(Mid(Shiki, L, 1)) Then
          '数字なら下付文字にする
          rg.Characters(L, 1).Font.Subscript = True
        End If
      End If
    Next
  Next
End Sub
    • good
    • 0
この回答へのお礼

お礼が遅れて申し訳ありません。
何度もわがままな質問に回答いただきありがとうございます。
姉が大変喜んでおりました。
マクロっておもしろいですね♪

お礼日時:2001/09/17 12:53

>もう一つ質問なんですが、「ショートカットキーに割り当てる」


>とはどのようにしたらいいんでしょうか??

マクロを登録したらシートに戻って、ツール→マクロ→マクロ で出てくるダイアログボックスでマクロを選択し、オプションボタンを押すとマクロオプションダイアログボックスが出てきます。Ctrl+の右のテキストボックスに半角アルファベット(例えばZ)を入力します。
これでこのマクロは Ctrl+Shifh+Z キーで起動します。
CtrlとShifhキーを押しておいてZキーを押す要領です。

この回答への補足

対応出来ない化学式があったので補足させてください。

Mg(NO3)2・6H2O  
    ↑    ↑
この数字は下付きに変換されるのですが、
( )の後ろの2が変換されません。
こういう形式の化学式は他にもたくさんありますので、
マクロで一度に変換できれば、、、と思いまして。。。
可能であればお願いできないでしょうか?

ショートカットキーの解説ありがとうございました♪


 

補足日時:2001/09/14 08:52
    • good
    • 0

No.1のmaruru01です。


Vectorで検索したら、下記のURLのソフトがありました。
ただし、シェアウェアソフトなので私は試してません。
mimi1504さんの使用意図に沿うかどうかもわかりませんが、
参考までに。

参考URL:http://www.vector.co.jp/soft/win95/writing/se086 …
    • good
    • 0
この回答へのお礼

こんな便利なものがあったんですね(*^0^*)
実はこれを必要としているのは姉なんです。
さっそく報告します!
ありがとうございました。

お礼日時:2001/09/10 17:13

マクロを作ってみました。



最初は普通に入力し、下付文字にしたいセル(複数可)を選択して実行します。ショートカットキーに割り当てると早いと思います。
H2Oなら2文字目の2を、H2O+H2O=2H2O (?) は2H2Oの最初の2は下付きにはしないはずです。対応できない式があったら補足して下さい。化学式も忘れてしまいました・・・

ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入し、そこに貼り付けます。
'(Public Sub ~ End Sub の範囲です)

Public Sub ShitaTukiMoji()
  Dim rg As Range '選択した範囲
  Dim L As Integer '文字カウンタ
  Dim Shiki As String '化学式
  Dim maeKigo As String '数値の前の文字は元素記号?

  For Each rg In Selection
    Shiki = rg
    For L = 2 To Len(Shiki)
      maeKigo = StrConv(Mid(Shiki, L - 1, 1), vbNarrow) '全角入力を考慮
      '分子の数、元素のみの数の場合は下付にしない。(例)2H2Oの最初の2など
      If 65 <= Asc(maeKigo) And Asc(maeKigo) <= 90 Then
        If IsNumeric(Mid(Shiki, L, 1)) Then
          '数字なら下付文字にする
          rg.Characters(L, 1).Font.Subscript = True
        End If
      End If
    Next
  Next
End Sub

この回答への補足

感激です!痛快です!どうもありがとうござました。
実はこれを必要としているのは私の姉なので、
すべての化学式に対応出来るかどうか、試してもらいます。
もしダメだったら、またよろしくお願いします。
もう一つ質問なんですが、「ショートカットキーに割り当てる」
とはどのようにしたらいいんでしょうか??

補足日時:2001/09/10 16:44
    • good
    • 0

IME2000の単語登録は出来ますよ。


Windows2000の場合、スタートメニュー→プログラム→アクセサリ→システムツールの中に「文字コード表」があります。
その中に上付きと下付きの数字や+-などの記号があります。(少なくともゴシックと明朝には)
で、例えば下付きの"2"を、コピーする文字のところで選択して、その前後に"H"と"O"を付けてコピーし、IMEの単語登録を呼び出せば語句の欄に"H下付き2O"が入るので、読みに"みず"とでも入れて登録すればOKです。
上付きもあるのでイオン式もOKです。
あとは、必要なものを片っ端から登録していきます。
ちなみに、ExcelはOKですが、アプリケーションによっては文字化けします。
とりあえず、こんな力技しか思いつきません。
ひょっとすると、IME対応の化学式辞書のようなものがあるかも知れません。
Vectorなどのダウンロードサイトをのぞいてみては?
では。
    • good
    • 0
この回答へのお礼

アドバイスどうもありがとうございます。
教えて下さった文字コード表から下付きの数字を探したのですが、
見つけられませんでした。(^^;)
Windows2000じゃないからでしょうか・・・

お礼日時:2001/09/10 16:41

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

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

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

Q化学式

たとえば

鉄+酸素=酸化鉄→3Fe+2O2=Fe3O4

というのが酸化鉄の化学式ですが・・

なぜ2O2なのですか?仮に酸素分子の事を言っていたとしても酸素分子はO2ですよね?なのになんで(左辺の式の方)2O2なんですか?
さらに分からないのが、3Feです。鉄やマグネシウムなどといった金属は分子を作らないと習いました。なのになぜ3Feなんでしょうか?
なぜ単純に
Fe+O=FeOにならないんですか?
これ以外にもこれと同じようなことで分からない化学式があります。
エタノールの化学式はC2H6Oですよね?
なのに、エタノール+酸素=二酸化炭素+水→C2H5OH+3O2=2CO2+3H2O
となります。
エタノールの化学式はC2H6Oなのになぜこの化学反応式だとC2H5OHになっているんですか?
二酸化炭素の化学式はCO2、一酸化炭素の化学式はCOで、たった1文字違いで全く違う物質になんてしまうのに・・!
酸素の化学式は(仮に分子のことを言うとしても02)Oなのになぜわざわざ3O2になるんですか?
わけがわかりません・・。
それとも、まだ中学校レベル、高校受験レベルではそういう化学反応式を理屈抜きで暗記するべきなのですか?
おしえてください、お願いします・・。

たとえば

鉄+酸素=酸化鉄→3Fe+2O2=Fe3O4

というのが酸化鉄の化学式ですが・・

なぜ2O2なのですか?仮に酸素分子の事を言っていたとしても酸素分子はO2ですよね?なのになんで(左辺の式の方)2O2なんですか?
さらに分からないのが、3Feです。鉄やマグネシウムなどといった金属は分子を作らないと習いました。なのになぜ3Feなんでしょうか?
なぜ単純に
Fe+O=FeOにならないんですか?
これ以外にもこれと同じようなことで分からない化学式があります。
エタノールの化学式はC2H6Oですよね?
なのに、エ...続きを読む

Aベストアンサー

>鉄+酸素=酸化鉄→3Fe+2O2=Fe3O4
>というのが酸化鉄の化学式ですが・・

これは「化学反応式」です。「化学式」は個々の物質やイオンを元素記号を用いて表したものです。
Fe O2 Fe3O4 これらが化学式です。

>酸素分子はO2ですよね?

そうですよ。

>なのになんで(左辺の式の方)2O2なんですか?
>さらに分からないのが、3Feです。鉄やマグネシウムなどといった金属は分子を作らないと習いました。なのになぜ3Feなんでしょうか?

化学式は理解されているようですが、まだ「化学反応式」についての理解ができていないと思います。
化学反応式は、個々の化学式の前に「係数」をつけて反応時の数の比を表しています。「2」O2の「2」や「3」Feの「3」は係数です。書かれていない場合は係数「1」が入っていると考えます。

>なぜ単純に
>Fe+O=FeOにならないんですか?

酸素は分子性物質であるので、原則として分子式であるO2(2は下付き)で表すという制限があります。
また酸化鉄と一言で書かれていますが、酸化鉄(II)FeO 四酸化三鉄Fe3O4 酸化鉄(III)Fe2O3 があります。
中学校の教科書は名称を区別していません(総称になってしまうので、「酸化鉄」では化学式を特定できません)が、高校以上では区別して扱います。

>エタノールの化学式はC2H6Oなのになぜこの化学反応式だとC2H5OHになっているんですか?

これは化学式の書き方の違いで、前者は分子式(1分子中の原子の種類と数を表す)、後者は示性式(同じ原子を完全にはまとめずに、物質が特定できるよう構造に分けて書き表す)で書かれています。どちらも正しいのですが、C2H6Oの物質は2種類存在する(もう1つはCH3OCH3)ため、区別したいときには示性式で書きます。ある程度複雑な有機化合物は示性式が一般的です。

>それとも、まだ中学校レベル、高校受験レベルではそういう化学反応式を理屈抜きで暗記するべきなのですか?

すべての物質が判明している化学反応式を書く(化学式がわかっているので係数を入れ、反応する数の比を求める)のは純粋に理屈ですよ。化学反応では原子の種類と数が変らない。(左辺と右辺の原子の種類と数は同じ)それを満たすように係数という比を求めるのです。一種の数のパズルですね。

やり方は学校で学んでください。目算法と未定係数法がありますが、未定係数法は入試問題を解くための方法で、実用的価値はあまり無いと思います。(すべての反応物・生成物の化学式が判明しているという条件は稀です)ですから何でも未定係数法というのはお勧めできません。

>鉄+酸素=酸化鉄→3Fe+2O2=Fe3O4
>というのが酸化鉄の化学式ですが・・

これは「化学反応式」です。「化学式」は個々の物質やイオンを元素記号を用いて表したものです。
Fe O2 Fe3O4 これらが化学式です。

>酸素分子はO2ですよね?

そうですよ。

>なのになんで(左辺の式の方)2O2なんですか?
>さらに分からないのが、3Feです。鉄やマグネシウムなどといった金属は分子を作らないと習いました。なのになぜ3Feなんでしょうか?

化学式は理解されているようですが、まだ「化学反応式」についての理解...続きを読む

QExcel 上付き(下付き)文字のみの置換方法

Excelにおいて、上付きもしくは下付きの文字のみの置換方法を教えてください。

Aベストアンサー

一応、#2の補足にある、"T3-133"という文字列の"T3"の"3"のみ上付きはクリアしましたが
マクロは希望していないようなので、マクロでできるよの報告のみで失礼します

Sub test()
Dim i As Long, ii As Integer
Dim a As String
a = "T3"
For i = 1 To Range("a65536").End(xlUp).Row
If InStr(Cells(i, 1).Value, a) > 0 Then
ii = InStr(Cells(i, 1).Value, a) + 1
Cells(i, 1).Characters(Start:=ii, Length:=1).Font.Superscript = True
End If
Next i
End Sub

Q化学式、化学反応式

 
 中学の理科で大体習う化学式と化学反応式の一覧などがあるサイトを探しているのですが、なかなか見つからず困っています。

 そういったサイトを知っている方、宜しければ教えて頂けないでしょうか。

 よろしくお願いします。

Aベストアンサー

こんにちは。

こちらのサイトはどうでしょうか。

http://yslibrary.cool.ne.jp/harorika102.htm

また、こちらもどうでしょうか。

http://www.max.hi-ho.ne.jp/lylle/kagaku4.html

私は理科大の化学科に行っていました。 化学は楽しいですよ。 是非楽しんでお勉強してくだいさいね(*´ω`*)

Qエクセル 条件付き書式でVLOOKUPの使い方?

エクセルで下記の様にA列に文字列が有り、B列と同じ文字列が有る場合
にA列の該当箇所のフォントの色などを変更したいのですが、やり方が
解りません。
A列の文字列は、今後どんどん増えて行きますが、B列の文字列は100個
程です。

 A   B
1 254 584
2 257 A58
3 846 GF8
4 A89 665
5 Y89 895
6 R56
7 584
8 PRE

どうか宜しくお願い致します。との質問に対し下記の回答を頂いて解決出来たと思われたのですが、数字のみの値に対しては
うまく行くのですが、アルファベットが含まれるとうまく行きません。

------先ほどの質問の回答---
 条件付き書式を使いますが、まずA1を選択、「書式」→「条件付き書式」で数式にして下記を入力、書式をクリック、フォントで色を選択してOKを押す。
=VLOOKUP(A1,$B$1:$B$100,1,0)
次に、A1をコピーして列のAをクリックする。「書式」→「形式を選択して貼り付け」で「書式」を選択。

Aベストアンサー

条件付き書式は、TRUE判定された場合に書式反映されますので、VLOOKUP関数はデータ抽出結果が数値ならばTRUEですが
文字列の場合、FALSEとなる為です。
仮にVLOOKUPでするのならば、=VLOOKUP(A1,$B$1:$B$100,1,0)=A1とすべきです。
前回、数値(0はFALSE、以外数値はTRUE)結果となるCOUNTIF提案をした次第です。

Qアデニン、グアニン、チミン、シトシンの化学式

こんにちは。

大学の生物学という授業で遺伝子の勉強をしており、
塩基の4つの化学物質 アデニン、グアニン、チミン、シトシンの
構造式と化学式をテストで書けと言われました。

教授が水での例を書いておくと、
構造式は、H-O-H
化学式は、H2O

と、書いていました。

Wikipediaで調べると、水には化学式としてH2Oと書いてありましたが、
アデニン、グアニン、チミン、シトシンには化学式は書いてなく、
似たような感じだなあと思った分子式などしか載っていませんでした。

他を調べても基礎知識のなく、全くわからなかったので
アデニン、グアニン、チミン、シトシンの化学式について
お答えいただけると幸いです。

Aベストアンサー

何か良く分からんのだが・・・、
-----------------------------------------------
http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%87%E3%83%8B%E3%83%B3
http://ja.wikipedia.org/wiki/%E3%82%B0%E3%82%A2%E3%83%8B%E3%83%B3
http://ja.wikipedia.org/wiki/%E3%83%81%E3%83%9F%E3%83%B3
http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%88%E3%82%B7%E3%83%B3
------------------------------------------------
・・・で分子式のことでないの!?
分子式、組成式、構造式、示性式など、元素記号を用いて物質の組成や構造を表した式を総称して「化学式」という
・・・と書いてあるのだが!?

Q《エクセル2000》VLOOKUPのエラー#N/Aを、条件付き書式で表示させない方法

こんにちは。
IFとVLOOKUPを組み合わせて、エラーだった場合表させない方法はわかりますが、条件付き書式でエラーを表示させない方法はあるでしょうか。

ただしファイルの仕様の都合上、どこかにわざとエラー値のセルをつくって「そこと同じだったら」という条件にするのは、なしでお願いします。

Aベストアンサー

「数式が」「=ISNA(セル座標)」
でできます。

Qデンプンの化学式

何故か急にデンプンの化学式って何だっけ?っと思いました
デンプンの化学式教えて下さい。

Aベストアンサー

デンプンはブドウ糖(C6H10O5)がたくさんつながったものなので、化学式で表すと、
(C6H10O5)n
です。

Qエクセルの一部分のセルに入力させない

教えてください。
エクセル2003で、例えばA列のみ入力をさせない方法はありますか。A列には計算式が入っていて、間違えてそこに数値などを入力してしまうと計算式が消えてしまいます。それを避けたいのです。質問の意味が理解して頂けますでしょうか。よろしくお願いします。

Aベストアンサー

1-1 セルの保護・ロック
http://asugi23.web.infoseek.co.jp/excel/soft37b.htm#1


セルの保護は勘違いしやすいのですが、セル単位で特定のセルのみ保護(ロック)するものではなく、ワークシート単位で保護するときに、特定のセルのみロックを解除できるということです。

Q化学式、数式を入力するソフト

 数式や、化学式を含む文書をつくり、印刷しようと思うのですが、数式・化学式を入力するためのソフトにはどのようなものがあるのでしょうか。化学式では、ベンゼン環を含む化合物も入力したいと思っています。使いやすいソフトを紹介してください。よろしくお願いします。(フリーソフトがあればうれしいです。)

Aベストアンサー

化学系だとIsis Drawがいいと思います。
本当に化学式を書くためだけの機能しかありませんが…使い勝手もよく非常に軽いので愛用していました。
検索すればすぐにみつかります。

数式などはWordに付属されている数式エディタというのがあります。
通常の数学で使う式であればこれが便利です。
しかし普通にWordをインストールするだけでは、この機能はついていないと思います。OfficeのCDを用意して、イルカ君のヘルプに従いインストールしてください。

Qエクセルのオートコレクト?カンマ(コンマ)の後に「i」が入力できない

いつもお世話になっています。
表題の通りです。。。
以下「」はわかりやすくするために付けたので
実際は「」を外して入力します。

「,i」と入力したい場面があります。

エクセルで半角の「,」or「.」の後に
同じく半角で小文字「i」を入力しようとしても
自動的に大文字「I」に変換されてしまいます。

オートコレクトの機能が働いているとは思うのですが
特にこの変換について触れているところは無いようです。

オートコレクトの機能を外してしまえばそのような変換はなくなるのでOKなのですが、
他に入力するときにオートコレクトに助けられる場面もあるので解除したくない機能です。

不思議なことに例えば
A1のセルに「,i」と入力⇒「,I」になる
A1をそのままにして「,i」と入力するとそのまま「,i」になります。

「,i」と「,I」が両方使い分けられるうまい方法をお願いします。


Excel2000を使用しています。
Excel2002では変換されませんでした。

Aベストアンサー

>オートコレクトの機能が働いているとは思うのですが
>特にこの変換について触れているところは無いようです。

i を I にするオートコレクトルールがありますよ。
オートコレクトダイアログの下半分はスクロールします。

>オートコレクトの機能を外してしまえばそのような変換はなくなるのでOKなのですが、
>他に入力するときにオートコレクトに助けられる場面もあるので解除したくない機能です。

オートコレクト自体はオフにせず、i -> I のルールだけ削除すればいいのでは?


人気Q&Aランキング