旅行好きのおしりトラブル対策グッズ3選

csvで貰ったデータをエクセルで開きます。
すると、生年月日は文字列でS500101の形で入力されています。

A1にデータが有る場合、関数を使って=LEFT(A1,3)&"/"&MID(A1,4,2)&"/"&RIGHT(A1,2)
でA2にS50/01/01と表示されます。

このデータをさらに、値複写で別のフィールドにコピーしてワードの差し込みフィールドに表示させると、なぜかS25/01/01と25年ずれて表示されます。
(別のフィールドにコピーするのは、いろいろな形で生年月日のデータを貰うので、一旦エクセルで認識できる形式にした後、差し込みフィールドに指定したセルに値複写しています。)

エクセル、ワード、とも、2007です。

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

A 回答 (3件)

No.2の回答者です。



前の回答でも説明していますが、質問にある関数だと日付形式もどきに
なっているだけであって、正しい和暦として認識できないものです。
理由は、年としての「S25」や「S55」は単なる文字列であって、それらを
和暦として正しく認識することがWordにはできません。

質問にある関数で「S55/08/08」と差し込まれていたとしても、これらは
「昭和55年8月8日」ではなく、西暦としての「1955/08/08」としての日付で
Wordは認識します。
S55が昭和55年ではなく、「S」を無視した55年が1955年となるのです。

ですから、西暦の下2桁と昭和を示す年号との下2桁の差25年分のずれが
生じるのです。

No.2で回答したように、質問の関数に1を乗算するようにして、日付で
Excel側でも認識できるようにさせれば、ずれは生じません。

差し込み印刷で、和暦のスイッチを追加してもしなくても正しく認識を
したいなら、乗算した関数の列を用意して、それを利用します。
例: {MERGEFIELD "生年月日2" \@ "ggge年M月d日" }

日付のスイッチがないものも利用したいなら、質問にある関数で用意を
したデータ列を指定して、それで「S55/08/08」での形式の日付ではない
テキストとしてだけ認識できるデータ列を差し込みます。
例: {MERGEFIELD "生年月日"}

どちらにも対応した差し込みフィールドは無理なので、別々に用意して
利用するようにして下さい。

ちなみに私が示した乗算したほうの差し込みフィールドなら、スイッチ
を書き換えるだけで質問の「S55/08/08」の形式にすることは可能です。
例: {MERGEFIELD "生年月日2" \@ "ge/M/d" }

http://www.nurs.or.jp/~ppoy/access/etc/etc011.html
    • good
    • 0

質問のデータの形式だと全角になっていますが、貰ったデータは年号の


英字と半角数字で6桁の組み合わせですよね?
(データは半角全角の区別はExcelなどでは必然なので)

質問にある関数だと日付形式もどきにしていますが、そのままでは日付
として認識してくれませんので(文字列なので)、少し修正が必要です。

 =LEFT(A1,3)&"/"&MID(A1,4,2)&"/"&RIGHT(A1,2)

これを

 =(LEFT(A1,3)&"/"&MID(A1,4,2)&"/"&RIGHT(A1,2))*1

のように全体に「1」を乗算することで、文字列を数値として認識して、
セルの書式設定での日付として認識してくれます。

これで差し込みフィールドにて表示させた場合にも、日付として正しく
表示してくれると思います。
ちなみに、差し込みフィールドそのものは単純なものですから、複雑な
式という認識は正しくないですよね。

この回答への補足

すみません、投稿に際して大文字ですが、実際は小文字です。
さらに分かったことがあります。
前回は1980/08/08の生年月日をワード上で昭和53年8月8日と表示させたかったので{MERGEFIELD "生年月日"\@ "ggge年M月d日"}と設定していました。{MERGEFIELD "生年月日"}にすると25年のずれはなくなりました。
どちらの形式でも対応できる差し込みフィールドの設定はどうすればいいでしょうか?

補足日時:2014/08/02 05:42
    • good
    • 0

値複写で別のフィールドにコピーした結果はどのように表示されていますか?



ワードの差し込みフィールドは複雑な式になっていますので、差し込みフィールドに直接表示させる場合はご注意ください。
    • good
    • 0

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

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

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

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

Q差し込み印刷で、生年月日を昭和12年…というような形式で表示させたい

 ワード、エクセル2003を使っています。

 普通にフィールドを挿入すると1/1/1937となってしまい、エクセルと同じように表示してくれません。昭和12年1月1日という形式にしたいので、色々調べてみたところ、
フィールドコードを{MERGEFIELD"生年月日"\@"gge年M月d日"}とすれば解消できると聞き試してみましたが、何も変化がありません。

 またエクセルデータは空欄なのに、ワードでは12:00:00AMと表示されてしまい、これも空欄のままにしたいです。

 このような問題を解決する方法を教えていただけませんか。

Aベストアンサー

Excelの元データがシートの左端(先頭)にあるのなら、差し込み形式を
DDEにすることで表示形式と空欄の問題は解決します。

Excel のデータを差し込みすると、日付、電話番号、および通貨が正しく
表示されない場合の対処方法
http://support.microsoft.com/kb/882154/ja

OLE DBのまま差し込みするのならば、フィールドコードにしている場合
は質問の形式では無理なので、こちら↓に書き直します。
{ MERGEFIELD "生年月日" \@ "ggge年M月d日" }
http://www.nurs.or.jp/~ppoy/access/etc/etc011.html

空欄についても、OLE DBでは元データを日付として認識しているので、
0の時間として表示をしてしまいます。
空欄にしないでスペースとかを入れてあれば、差し込み先でスペースと
して入力されると思います。
もしも、こちら↓で対応ができれば使用してみてください。
{ if{ MERGEFIELD 生年月日 }="12:00:00 AM"""{ MERGEFIELD 生年月日\@ "ggge年M月d日"}}
私の経験では、半々ぐらいで(やり方が悪いのか)駄目になるようです。

Excelの元データがシートの左端(先頭)にあるのなら、差し込み形式を
DDEにすることで表示形式と空欄の問題は解決します。

Excel のデータを差し込みすると、日付、電話番号、および通貨が正しく
表示されない場合の対処方法
http://support.microsoft.com/kb/882154/ja

OLE DBのまま差し込みするのならば、フィールドコードにしている場合
は質問の形式では無理なので、こちら↓に書き直します。
{ MERGEFIELD "生年月日" \@ "ggge年M月d日" }
http://www.nurs.or.jp/~ppoy/access/etc/etc011.html

...続きを読む

Qexcelからexcelへの差し込み印刷

お世話になります。

excelでwordへの差し込み印刷をよく利用するのですが、
同様に、
excelのデータをexcelに流し込んで印刷する方法はありますでしょうか。

excelの名簿のデータを
excelの表のフォーマットに流し込んで
1人づつ印刷したいのですが。

お分かりの方いらっしゃいました教えてください。
どうぞ宜しくお願い致します。

Aベストアンサー

イメージはわかるが、エクセルに差込印刷の機能はありません。
ワードなどと違ってA.X氏1人分書類シート作成、B印刷、Aのシートををy氏分のデータでシート内容(セル)を置き換え、印刷、の繰り返しをします。
ーー
例データ Sheet1 A1;D3
連番氏名住所品物
1山田 三郎東京都江東区かばん
2植田 健横浜市港北区帽子
A列はこのたび連番を振りました。
Sheet2   に送り状の書式を体裁よく作ります。
H1セル(どこでも良いが、下記のVLOOKUPの式は変わる)

送り状

住所X
氏名Y

品物Z

上記の品をお送り申し上げます。
ご査収ください

以上
Xの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,2,FALSE)
Yの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,3,FALSE)
Zの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,4,FALSE)

---
結果

送り状

住所山田 三郎
氏名東京都江東区

品物かばん

上記の品をお送り申し上げます。
ご査収ください

以上
ここで
VBE画面で標準モジュールに
Sub test01()
For i = 1 To 2 '人数分
Range("H1") = i
Range("A1:G20").PrintOut '印刷範囲は各人同じとする
Next i
End Sub
を張り付け、実行する。
山田、植田分の紙が2枚印刷されました。
これは質問者はVBAの経験も無いでしょうと、最低限にしてあります。
VBAを勉強してください。
別ブックにある名簿を対象などは複雑になるので避けています。

イメージはわかるが、エクセルに差込印刷の機能はありません。
ワードなどと違ってA.X氏1人分書類シート作成、B印刷、Aのシートををy氏分のデータでシート内容(セル)を置き換え、印刷、の繰り返しをします。
ーー
例データ Sheet1 A1;D3
連番氏名住所品物
1山田 三郎東京都江東区かばん
2植田 健横浜市港北区帽子
A列はこのたび連番を振りました。
Sheet2   に送り状の書式を体裁よく作ります。
H1セル(どこでも良いが、下記のVLOOKUPの式は変わる)

送り状

住所X
氏名Y

品物Z

...続きを読む

QWORDの差し込み印刷について

EXCELにある日付のデータ”2004/5/18”を
WORDに差し込み印刷で挿入すると
”5/18/2004”となってしまいます。
表示形式は変えられますか?
平成16年5月18日と表示する方法はないでしょうか。

Aベストアンサー

差し込みした後、Alt+F9でフィールドコードを表示します。
{MERGEFIELD "日付"}が表示されるはずです。
ここでの”日付”は、エクセルの項目名に「日付」と入力したので、”日付”と表示されています。

その後、MSページのごとく、
{MERGEFIELD "日付"}を{MERGEFIELD "日付"\@ "ggge年M月d日"}と入力すれば大丈夫のはずです。
フィールド更新(F9キークリック)後、再度、Alt+F9で、
表示形式が平成になっていると思います。

QWordで日付が差し込み印刷できない

Excelに生年月日(例:昭和50年1月4日)を入力していて、それをWordに差し込み印刷をしたのですが、
「27398」と表示され、「昭和50年1月4日」というような和暦表示ができませんでした。

Wordで差し込み印刷の日付設定を下記のようにし、更新したのですが、
変化ありませんでした。

{ MERGEFIELD "生年月日" \@ "ggge年M月d日" }

どのように表記したらよいのでしょうか。
WindowsXP、Office2003を使用しております。

ご教授下さい。

Aベストアンサー

1番です。やっとPCが空きましたので・・・。

http://office.microsoft.com/ja-jp/word/HA011164951041.aspx

↑のフィールドコードの説明によれば、ご質問に示されたコード記述に間違いはないように思います。

Word2003で試してみましたが、単純差込では「1/4/1970」のように表示され、「27938」といったシリアル値では表示されませんでした。(Excel上では西暦で入力し、セルの書式設定で和暦表示にしました。)
和暦への変換も↓のとおりのコードでうまくいきました。
{ MERGEFIELD "日付" \@ "ggge年M月d日" }

わからないのは、私がやってみた操作では日付(西暦)形式で差し込まれ、質問者様の操作ではシリアル値が差し込まれるという点なんですが、このナゾをフォロー回答してくださる方はいらっしゃいませんか?

QWORD差し込み印刷:文字+日付データを和暦表示

WORD 2007 差し込み印刷で、日付データの前に"受験年月日:"を表示し、更に日付を和暦で表示できるようにしたいのですが、うまくいきません。

”受験年月日”に日付けがある人もいれば、ない人もいます。

そこで、Wordの差し込み印刷機能を使い、各個人の備考欄に”受験年月日”に日付けがある人は、
受験年月日:平成23年8月1日 と表示させたいのです。

{ MERGEFIELD 受験年月日 \@ "ggge年M月d日" }で和暦表示まではできるのですが、これに受験年月日:をくっつけることができずに困っています。

ご存知の方、ご教示ください。

Aベストアンサー

挿入したい文字列の前後に半角のアポストロフィを記載して、
文字列を認識できるようにします。

http://office.microsoft.com/ja-jp/word-help/HP005186227.aspx
【その他の文字列を表示するための書式記号】を参照のこと

'受験年月日'を日付スイッチの中に入れる
 \@ "'受験年月日:'ggge年M月d日"

{ MERGEFIELD 受験年月日 \@ "'受験年月日:'ggge年M月d日" }

添付画像は今日の日付をDATEフィールドで文字列付きです。
受験年月日が空白なら何も入れないなら、以下のようなIF文を
使う方法もあります。

{ IF { MERGEFIELD 受験年月日 } ="" "" { MERGEFIELD 受験年月日 \@ "'受験年月日:'ggge年M月d日" } }

QWord2007の差込印刷で年号が和暦で出ないので困っています

OFFICE2000から2007に変わることで問題が発生して困っていますので、アドバイスをよろしくお願いします。
OFFICE2000のWordで作成したデータをもとに、Word2007の差し込み印刷を利用しようとしています。やはりEXCEL2000で作った表から和暦で表示した年月日(たとえば平成19年10月10日)をWORDファイルに出すと、「10/10/2007」のように西暦に置き換えられて出てしまいます。これを和暦のまま出すことはできないでしょうか。

Aベストアンサー

>「現在のタスクを完了するためにMicrosoft Excelに対して再度DDE
>接続を行うことはできませんでした」というメッセージ
このエラーが出るのならDDEでの接続は諦めてOLE DBに戻してください。

Word2007でデータ ソースを添付または挿入するときにエラーメッセージ
"再度 DDE 接続を行うことはできませんでした" が表示される
http://support.microsoft.com/kb/918594/ja

この場合、Word側で差し込みフィールドを表示してから、日付スイッチ
「\@」で変更をします。
{ MERGEFIELD フィールド名 \@ "ggge年M月d日" }

Excelとは日付形式が一部違いますから、こちら↓も参考に。
ワードのフィールドコードの日付表示形式スイッチ一覧
http://www.nurs.or.jp/~ppoy/access/etc/etc011.html

Qワード差し込みのフィールドコード表示編集

No.3883563で差し込み印刷の表示の仕方を教えていただいたものです。うちのパソコンでは、教えていただいた方法でうまくいったので、今日会社のパソでやってみたら、できません。何がいけなかったのでしょうか?誰かお助けください
≪やったこと≫
(1)ワードと差し込みデータのエクセルを開く
(2)ワードのツール・オプション・全般タブで、「文書を開くときファイル形式を確認する」にチェック
(3)ワードで、変更したいフィールドコードの部分をクリックし、グレーのマーキングが表示されるようにし、右クリックでフィールドコードの表示・非表示をクリック
(4){・”MERGEFIELD”・”実施日”・}と表示が変わったので、{・”MERGEFIELD”・”実施日”・\@"ggge年M月d日"}と変更
(5)右クリックでフィールドコードを非表示に
(6)うまくいかず、相変わらず「5/28/2008」になるので、一度ワードを閉じた
(7)もう一度開いたら、ファイルの種類を聞かれたので、元から選択されていた「リッチテキスト(だったかな?)」を選択
(8)ALT+F9で、フィールドコードを表示
(9)(4)と同じに変更したり、グレーフォントになっている”実施日
”の後の「・」がいけないのかなと思い、「・」を消したりしたけど、(6)に同じ

No.3883563で差し込み印刷の表示の仕方を教えていただいたものです。うちのパソコンでは、教えていただいた方法でうまくいったので、今日会社のパソでやってみたら、できません。何がいけなかったのでしょうか?誰かお助けください
≪やったこと≫
(1)ワードと差し込みデータのエクセルを開く
(2)ワードのツール・オプション・全般タブで、「文書を開くときファイル形式を確認する」にチェック
(3)ワードで、変更したいフィールドコードの部分をクリックし、グレーのマーキングが表示されるようにし、右クリック...続きを読む

Aベストアンサー

私が回答を入れなくても、ANo.1さんが的確な回答を入れるでしょうが
私なりのアドバイスを入れますね。

まずは質問者の過去ログ
(すぐに質問にあるナンバーのリンク先へ辿れるように)
http://oshiete1.goo.ne.jp/qa3883563.html
こちら↑の内容から、Word2002への差し込みでOLE DBでの差し込み形式
において、表示形式を希望のものに変更したいが、今回の質問と補足を
読む限り希望の形式にもならないということですね。

Excel 側の日付や金額データを全角にするのは、データの有効利用する
ことを考えるとあまり良い方法ではないと思います。半角(直接)入力の
データをWord側で設定するほうが良いと思いますので、この際問題点を
キチンと洗い出したほうが良いと思います。

検証方法
Excelデータを簡単なものでよいので新規作成して用意します。
Word側も新規作成して差し込みの準備をします。
差し込みウィザードを使うなどで簡単な差し込みをします。
<< 実施日 >> → 5/28/2008
<< 金額 >> → 28000
このようになったものをフィールドコードの表示状態にする。

{ MERGEFIELD 実施日 } 
これに日付用のスイッチ「 \@ ggge'年' 」を付ける
{ MERGEFIELD 実施日 \@ ggge'年' } → 平成20年

{ MERGEFIELD 金額 }
これに桁区切りのスイッチ「 \# #,##0 」を付ける
{ MERGEFIELD 金額 \# #,##0 } → 28,000
この状態になるかを確認する。
できれば「 」内のスイッチをコピーして利用すると間違いがない。
良くあるのが全角が混じっているためにスイッチが有効になっていない
場合や、半角スペースの入れ方などが的確でない場合もある。

日付については{ MERGEFIELD 実施日 \@ "ggge年M月d日" }ではなく
{ MERGEFIELD 実施日 \@ ggge年M月d日 }又は
{ MERGEFIELD 実施日 \@ ggge'年'M'月'd'日' }など二重引用符を使用
しないで設定してみる方法もあります。
http://office.microsoft.com/ja-jp/word/HP051862271041.aspx

私が回答を入れなくても、ANo.1さんが的確な回答を入れるでしょうが
私なりのアドバイスを入れますね。

まずは質問者の過去ログ
(すぐに質問にあるナンバーのリンク先へ辿れるように)
http://oshiete1.goo.ne.jp/qa3883563.html
こちら↑の内容から、Word2002への差し込みでOLE DBでの差し込み形式
において、表示形式を希望のものに変更したいが、今回の質問と補足を
読む限り希望の形式にもならないということですね。

Excel 側の日付や金額データを全角にするのは、データの有効利用する
ことを考...続きを読む

QWord2010の差込印刷で金額にコンマをつける

Word2010の文書に差し込み印刷で、エクセルデータの金額を挿入したいのですが、以前のバージョンでは、ツール→オプションの全般タブの”文書を開く時に「ファイル形式を確認する」にチェックを入れて行えば、コンマをつけることができましたが、Word2010になってから、同じ方法ができません(その前にツールがみつからない)どのようにすれば、コンマを入れることができるか、ご存じの方がいらっしゃいましたら教えていただけないでしょうか。

Aベストアンサー

「差し込みフィールド」を右クリックして「フィールドの編集」を選択し、フィールドを編集して「数値書式スイッチ」と「表示形式」を追加します。

下記URLのページをご参照下さい。

「差込印刷で桁区切りカンマを表示する-\# #,##0」
http://www.relief.jp/itnote/archives/003031.php

「Word 2010 でフィールド コードを挿入、書式を設定する」
http://office.microsoft.com/ja-jp/word-help/HA101830917.aspx

Q逆向き/(スラッシュ)の入力方法

タイトルの通り、逆向き/(スラッシュ)の入力方法がわかりません。

記号⇒変換 で出てくるのは\、大文字ですよね、
これの小文字バージョンの出し方がわからないのです。
cgiのプログラミングにチャレンジ中でブチ当たって
しまい、途方にくれています。
ちなみに使ってるキーボードは106です。

Aベストアンサー

殆どの場合、バックスラッシュを使うのであれば、¥記号で代用できます
これは、フォントの問題であって、内部的な数値は同じ物だからです

もし、cgiプログラミングの本などでバックスラッシュを使うように指示があった
場合は、スラッシュではなく¥記号にするのが間違いがないはずです

Qwordの差込印刷(ラベル作成)と、Excelのゼロ値非表示

Excelの住所録データがあり、それをインポートさせてwordでラベルを作っています。
参照元であるExcelのデータのほうは、別の住所録を更に参照しており、文字の入っていないセルが【0】と表示されていたので、ツール<オプション から、【ゼロ値】のボックスのチェックをはずし、ゼロを表示させないようにしておりました。

Excelで見る限りではゼロは確かに非表示になるのですが、それをwordにインポートさせてラベルを作ろうとすると、非表示にしていたゼロまでが表示されます。
(たとえば、ビル名がない住所の、ビル名が来る部分が0になっていたり)

このword上でのゼロを消してしまう方法は、ないものでしょうか?
単純に置換でゼロを消してしまうと、郵便番号やビルの階数番号のゼロまでもが消えてしまいます。

またまた分かりづらい説明で、ごめんなさい。。。
何卒宜しくお願い致します。

Aベストアンサー

一般に2つの方法が使われます。
1)
ツール=>オプション、全般タブで「文書を開くときにファイル形式を確認する」にチェックを入れます。差込み用データファイルを選ぶ際にEXCELワークシートDDEを選びます。これでExcelの表示形式が有効になるはずです。

2)
差し込みフィールドに書式を設定することでゼロを非表示にする方法(個人的には柔軟性が高いので、こちらの方法が好みです。)
※フィールドに書式を設定する方法
ワードでゼロを非表示にしたデータフィールドにカーソルを合わせて、右クリック、「フィールドコードの表示/非表示」を選択します。するとデータのところが
{MERGEFIELD "住所2}
のように表示されますので、これを
{MERGEFIELD "住所2" \# #}
に変更します。また右クリックして「フィールドコードの表示/非表示」を選択、もう一度右クリックして「フィールドの更新」を選択。
これで、0非表示になる筈です。

おまけ)
#1の回答者さんが書かれているようにExcel側でゼロが入らないようにするのも、いい方法だと思います。

VLOOKUP関数などで検索して、表示しているのでない場合、例えば単純に=Sheet3!A10とかでデータを引っ張ってきている場合、IF関数で、参照元にデータがあるか調べて無ければ非表示というような方法もありますが、T関数を使用する方法もあります。
=T(Sheet3!A10)
のように指定すると、参照元にデータが無くても問題ありません。

一般に2つの方法が使われます。
1)
ツール=>オプション、全般タブで「文書を開くときにファイル形式を確認する」にチェックを入れます。差込み用データファイルを選ぶ際にEXCELワークシートDDEを選びます。これでExcelの表示形式が有効になるはずです。

2)
差し込みフィールドに書式を設定することでゼロを非表示にする方法(個人的には柔軟性が高いので、こちらの方法が好みです。)
※フィールドに書式を設定する方法
ワードでゼロを非表示にしたデータフィールドにカーソルを合わせて、右クリック...続きを読む


人気Q&Aランキング

おすすめ情報