
Excelで年表を作成しています。
年代と本文を分けたいのですが、どのようにやればよいかわかりません。
例えば、B1のセルに1945年太平洋戦争終結。という文字列が入っています。この中の1945年をA1のセルに移動して、B1のセルには太平洋戦争終結をスペースなしで残したいのですが、Excelでは出来るのでしょうか。
MID関数で移動させる手も考えましたが、手間かかりデータを間違えそうで。
なにか良い方法がありましたら、是非、お教え下さい。
よろしくお願い致します。
過去ログも調べたのですが、見落としていたら申し訳ありません。
No.6ベストアンサー
- 回答日時:
まだ締め切られてないようですので・・・
区切るべき文字を全てピックアップして、何文字目に区切ればいいかをとりあえず数値にする。
C1 =IF(ISNUMBER(FIND("年",B1)),FIND("年",B1),0)
D1 =IF(ISNUMBER(FIND("世紀",B1)),FIND("世紀",B1)+1,0)
「+1」は"世紀"が2文字だから
その他にも区切るべき文字があれば、E1,F1・・・同じように
G1 =LEFT(B1,MAX(C1:H1))
区切るべき文字に"○○年代"とか"○○世紀頃"とかが混ざってると上記の式では失敗。
それから英数混じりでは、Excelの並べ替え機能を使っても、ちゃんと年代順にならないのでは?
結局、手作業・目で確認作業が必要で、数式作って一発で完了とは、いかないのではないでしょうか。
No.5
- 回答日時:
年と事件を分けるルールは何ですか。
どうも質問者のケースではないようです。であればできません。表面的なルールでなくても、深いところのルールでも良いが、ルールがないものは関数にしろVBAにしろC言語でも処理できません。西暦1-4桁+年が圧倒的に多ければ、まず年が固定桁の場合はMID関数、浮動の場合FIND関数で年を探し、それを実行後、別のルールを考えては。
A19の14年ああああ
に対し
B19は=LEFT(A19,FIND("年",A19))
C19は=RIGHT(A19,LEN(A19)-FIND("年",A19))
のように。
No.4
- 回答日時:
たとえば下記のようなマクロを作成し
ツール→マクロ→マクロでオプションを選択
(たとえば)aをいれてOK→キャンセルで
ショートカットを登録します。
これで分割したいセルを選択した状態で
Ctrl+aで文字列が分割できます。
---
Sub m()
Dim a As Range
Set a = ActiveCell
Cells(a.Row, 1) = Left$(a.Value, InStr(1, a.Value, "年"))
Cells(a.Row, 2) = Mid$(a.Value, InStr(1, a.Value, "年") + 1)
End Sub
スマートなやり方ですね。ありがとうございます。
ただ、マクロを使うと失敗したとき“元に戻す”効かないのでは?
一つのSheetに3000近いデータがあるので、マクロは怖いです。
というか、マクロの知識がなかったりして...。
No.3
- 回答日時:
「1945年太平洋戦争終結」
のように必ず年号が4桁かつ先頭に現れるのであればあまりにも単純すぎるので、いろいろなパターンがあってのご質問と見受けられます。もうすこし例を示していただけませんでしょうか?
この回答への補足
ありがとうございます。
確かに4桁ばかりではなく、B.C.やA.D.が先頭に付く数(例B.C.4世紀)や75000などのような5桁の数字もあります。
作業は、歴史資料を集めては、分類せずExcelのセルに貼り付けています。最後に、バラバラな年代(+本文)を年代別にExcelの“並び替え”で整えます。その為に、数字の抽出が必要になります。原則として、年代は必ず本文の前方に置く事としています。よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel内での検索結果をシート...
-
EXCELで特定のセルに表示...
-
エクセルVBA
-
エクセルでの検索ボックスの作...
-
Excelで、図形内の文字をセルに...
-
太字に設定されているセルの個...
-
シート保護とグループ化機能を...
-
Excelでセルをクリックす...
-
セルがクリックされた回数をカ...
-
マクロで入力済の最初のセルを...
-
エクセル マクロ チェックボックス
-
エクセル 数字をすべて○などの...
-
コピペして元のセルに戻るVBAに...
-
Excel ハイパーリンクのURLを別...
-
エクセルVBA セルに表示された...
-
エクセル 未入力セルがあると...
-
アポストロフィーの一括挿入 ...
-
Excel 行の連続データを列に参...
-
エクセルの画面で十字マークが...
-
Excel2010の指マークと白十字マ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel内での検索結果をシート...
-
エクセル 数字をすべて○などの...
-
Excelで、図形内の文字をセルに...
-
Excel ハイパーリンクのURLを別...
-
Excel2007 色のカウント (VBA)
-
クリックすると文章が表示され...
-
マクロを実行すると画像がズレ...
-
太字に設定されているセルの個...
-
Excelでセルをクリックす...
-
エクセルでPDFリンクを大量...
-
アポストロフィーの一括挿入 ...
-
エクセル 未入力セルがあると...
-
エクセルでページ数をあるセル...
-
シート保護とグループ化機能を...
-
ページ内ハイパーリンクの表示...
-
フォントの色を指定して削除出...
-
空白セルを空セルに置き換える...
-
Excel:セルの値(文字列)を数...
-
現在のセルの位置を返す関数は...
おすすめ情報