人に聞けない痔の悩み、これでスッキリ >>

私の使っているロット番号は、6C041M999で最初の6は、2016年の6で次のアルファベットは、一週目が、Aで二週目がB三週目がCのようにその月の週を表し、次の04は、月を表し、次の1は、曜日で、1が月曜日2が火曜日3が水曜日で、次のM999は、私の意味です。ですから6C041M999は、2016年4月12日月曜日に私M999が作った製品を表しています。これをエクセルで、4/12 Enterキーを押せば、半角英数字で変換される表計算式を教えて下さい。

質問者からの補足コメント

  • すいません2016年4月12日は火曜日ですから、6C042M999でした。6C041M999は、2016年4月11日月曜日なので4/11Enterでお願いします。

      補足日時:2016/04/17 15:29
  • うーん・・・

    ご回答ありがとうございます。その月の第1週目がA、第2週目がB、第3週目がC、第4週目がD、第5週目がEに、うまく変換されません。そこ以外は、うまくいきました。もう一度ご回答お願いします。

      補足日時:2016/04/22 22:19

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

A 回答 (5件)

失礼しました。


今年の1月31日と2月1日は同じ週にあるとして、どちらも「E」と表記されると思います。
自分の回答は、その年の第一週からの連番です。(その年の第1木曜日のある週を第1週目としてカウントする)
自分が使用していたシリアル番号の体系がこれだったもので勘違いしていました。

今年の5月1日(日)は5月の1週目、5月2日(月)は2週目としてよいのであれば、次のように計算できます。
月曜日から曜日をカウントしているようなので…、月曜を「0」~日曜を「6」とし、
その月の初日の曜日に対するWEEKDAY関数が返す数値(初日の曜日に対する数値)を日付に加えることで
その月の何週目になるのかを判断します。
判断方法は、その月の初日の曜日に対するWEEKDAY関数が返す数値を日付に加え7で割る。
すると、割った余りを切り捨てた値は、
 1週目は0
 2週目は1
 3週目は2
 4週目は3
 5週目は4
になる。
そこで前の回答に準じてCHAR関数を使うと、
=CHAR( INT( A1+WEEKDAY( DATE(YEAR(A1),MONTH(A1),1) ,3)/7)+65)
CHOOSE関数を使うと
=CHOOSE(INT(A1+WEEKDAY(DATE(YEAR(A1),MONTH(A1),1),3)/7)+1 , "A","B","C","D","E","F")
になります。(たぶん…未検証)


・・・
覚えておくと良いかもしれない知識。
WEEKDAY関数は1900年3月1日より前の日付では多くのパソコンにおいて誤った値を返します。
これは、1900年は閏年ではない(※)のですが、
Excel開発当時に表計算ソフトで絶対的シェアを持っていたLotus社の「1-2-3」が1900年1月1日を日付計算の起点 "1" とし、さらに閏年として扱っていたため
Microsoft社は「Excel」に「1-2-3」と互換性を持たせるためにこのシステムを採用しているためです。
そのため 1904年1月1日を起点 "1" とする設定もありますが、DOS版やWindows版では1900年1月1日を起点にする設定が初期設定になっています。
「1-2-3」と競合しないMac版では1904年1月1日が初期設定になっています。
ただし1900年を起点とするシステムと1904年を起点とするシステムでそれぞれ作成された物は
日付(シリアル値)に互換性がないため、異なるシステムで使用すると日付や曜日にずれが生じます。注意してください。

このため他のパソコンで表示させると日付や曜日が異なることがあるときは、
オプションで日付の起点が1900年になっているか1904年になっているかの違いが原因になっている可能性があるので、
データが作られたパソコンでの設定を確認し、同じ設定にすることを勧めます。


「西暦が100で割り切れる年は閏年としない。ただし、西暦が400で割り切れる年は閏年とする」
というルールがあります。そのため2000年は閏年だったのですが、1900年は閏年にはなりません。
    • good
    • 0

失礼しました。


E1セルのWEEKDAY関数で指定を間違えていました。
これでは日曜日が1になり、月曜日が2になります。
 =WEEKDAY((A1),2)
と置き換えてください。
    • good
    • 0

C1セルに入力する ISOWEEKNUM関数は、Excel 2013から追加された関数なので、バージョンによっては使えないかもしれません。


1月の第1木曜日がある週をその年の第1週とするルールに基づいて数値を返す関数です。

Excel 2010では
WEEKNUM(A1,21)
と置き換えてください。
    • good
    • 0
この回答へのお礼

すばやい回答、ありがとうございます。さっそく明日、職場のパソコンで試してみます。

お礼日時:2016/04/17 18:15

仮に A2セルに 日付 4/12 と入っているとして


空いているセルに
=RIGHT(TEXT(A2,"yy"),1) で 6が表示
=CHOOSE(WEEKDAY(A2),"A","B","C","D","E","F","G","H") で Cが表示
=TEXT(A2,"mm") で 04が表示

これらを & でつなげて 最後に & "M999" を付けくわえる事で可能かと。
    • good
    • 0
この回答へのお礼

すばやい回答、ありがとうございます。さっそく明日、職場のパソコンで試してみます。

お礼日時:2016/04/17 18:18

A1セルに4/11と入力するとする。


B1セルに
 =RIGHT(YEAR(A1),1)
C1セルに
 =CHAR(ISOWEEKNUM(A1)+64)
D1セルに
 =TEXT(A1,"mm")
E1セルに
 =WEEKDAY(A1,1)
F1セルに
 M999
と、それぞれ入力。
B2セルに
 =B1&C1&D1&E1&F1
と入力すると求めたい結果を得られます。
    • good
    • 0
この回答へのお礼

すばやい回答、ありがとうございます。さっそく明日、職場のパソコンで試してみます。

お礼日時:2016/04/17 18:16

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

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

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

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

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

Qロット番号の作成について

EXCEL2003で質問です。

A1 2011D11001
A2 2011D11002
A3 2011D11003

というロット番号を作成しています。
2011は西暦 Dは4月をアルファベット(1月はA) 11は日 001は通し番号です。
今はA1だけを作りドラッグして700行くらいを作成しています。
何か関数でできると思いあれこれやってるのですが、通し番号をうまく処理できません。

関数を使うような良い方法を教えて下さい。
Q1 A1だけ手打ちすればA700まで一度に変えられる方法。

Q2 どこかに日付を入れればA1からA700まで変わる方法。

どちらかでもけっこうですので教えて下さい。

Aベストアンサー

B1に日付があると,
A1に
=TEXT($B$1,"yyyy!"&CHAR(64+MONTH($B$1))&"dd")&TEXT(ROW(),"000")
以下コピー。


A1に種番号があると
A2に
=LEFT(A1,7)&TEXT(RIGHT(A1,3)+1,"000")
以下コピー。

Q在庫日付順に先入先出しをエクセルで管理できるのでしょうか?

食品の賞味期限を管理しようとしています。
在庫日付順に先入先出しをエクセルで管理できるのでしょうか?
例えば、
材料名  ロットNo.  賞味期限  在庫
みかん  123     2008/3/1   10
みかん  124     2008/3/20   15
バナナ  111     2008/4/10   20
としておいて、

みかん  20出荷する場合、

みかん  124     2008/3/20   5 に
エクセルで管理することできるのでしょうか?
ごぞんじな方教えて頂けませんでしょうか?
宜しくお願い致します。

Aベストアンサー

質問例で
みかん  20出荷する場合、
賞味期限の早く来る、
みかん  123     2008/3/1   10
からまず充当し、
不足分10を
みかん  124     2008/3/20   15
から充当し
残り
みかん  124     2008/3/20   5 
を残すように更新するのですね。
質問は一瞬判りにくかった。
ーーー
この程度になるとエクセルの関数では難しいと思う。
VBAで処理しないと
優先関係
あるロットで必要数不足の場合次々に繰り越して考えていく点
など
関数では不定な数のデータを扱うのは難しい。
また日々や時々推移していくものを表形式にどう具体化するかも方式は一定して無いでしょう。
ある時点の在庫表、注文をどういう風に表にするか、注文を組み入れた後の表をどのように構成するか。日々表が出来るが、どうするか。形式論だけでも難しい。
これは本式にはプロ・本職がやる分野で、多くの経験で鍛えられてい無いと、VBAを少しかじった程度では出来ないでしょう。
ーー
プロに金を出してやってもらうか、プログラムのベテランがいれば頼むか。
プロは多分、マスターとトランザクションという考え方を採るだろう。エクセルからコンピュタ利用に入ってとどまっている者は、こういう考えが苦手なはずだ。
ーー
そうでなければ注文分を割り当てるのは、人間が手作業と頭で行うしかなかろう。
出  残
みかん  123     2008/3/1    10 10  0
みかん  124     2008/3/20   15 10 5
出の10,10の行位置探しと、10,10の配分は人間が考える。
まあ計算できるところの計算は関数でして、あとプロセスの記録を残すという表だね。
手作業帳簿の時代はそれをやっていたはずだ。

質問例で
みかん  20出荷する場合、
賞味期限の早く来る、
みかん  123     2008/3/1   10
からまず充当し、
不足分10を
みかん  124     2008/3/20   15
から充当し
残り
みかん  124     2008/3/20   5 
を残すように更新するのですね。
質問は一瞬判りにくかった。
ーーー
この程度になるとエクセルの関数では難しいと思う。
VBAで処理しないと
優先関係
あるロットで必要数不足の場合次々に繰り越して考えていく点
など
関数では不定な数のデータを扱う...続きを読む

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

QINVOICE(インボイス)ってなんですか?

質問するのが場違な場所だったらすいません(x_x)

仕事で、インボイスという言葉を耳にするのですが
今いちなんのことなのか分かりません。

請求書?なのでしょうか。

海外へ部品を発送時に、発行されるもの?
発送した後に発行されるもの?

どうか、頭の悪いわたしに
分かりやすくおしえていただけると助かりますm(--)m

Aベストアンサー

こんにちは。

#2の補足です。
日経新聞社の流通用語辞典ではこんな風になっています。

「インボイスinvoice
 商品を輸出する際の*送り状。売り主(輸出業者)から買い主(輸入業者)あてに出す書類で,売買契約の条件を正当に履行したことを記す。商品名や数量,単価,代金の支払い方法,運賃,*保険料などの明細通知書でもある。買い主は輸入品の仕入れ書として税関に提出する」出典:日本経済新聞社 流通用語辞典

業種によっても、企業によっても呼び方が異なるものでしょうが、基本的にはこんな感じではないでしょうか。

ご参考まで。

Q「お取引先様各位」は正しいですか?

多数の取引先に対して通知文書を発行する際に、「お取引様各位」という宛名は正しいのでしょうか?
「お取引様」で「様」をつけて、更に「各位」とつけると重複するような印象を感じたのですがいかがなものなのでしょうか?(○○各位殿 みたいな印象)
過去の回答に「お客様各位」という使い方があるようなことがあったのですが、「お客様」は客+様じゃなくて「お客様」という代名詞のような扱いなのかしら・・?と思ったりしたので新たに質問させていただきました。
ネット検索したのですが、まちまちなので・・
よろしくお願いします。

Aベストアンサー

難しいですよね。
「お取引先 各位」「お得意先 各位」のレベルでよい、とは思いますが・・
「お取引先様 各位」はちょっと「くどい」感じを受けますね。
「各位」には、ある程度の「敬称」を意味として含んでいるはずなので、失礼ではないように思われます。
バカ丁寧な宛先の書かれた文書にも拘らず、内容が「支払いの督促」だったら、意味ないですしね(笑)

「お客様 各位」は、対象がいわゆる「ビジネスの相手」ではなく、不特定多数の客なので、おかしくはないでしょう。
「お客様へ ~ お知らせ」でもいいわけですし。

その他のいろいろな、ビジネス文書の記入方法をまとめたページを見つけました↓ので、ご参考に・・

参考URL:http://www.ddart.co.jp/businessletter.html

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

QVLOOKUP関数のFALSEって?

VLOOKUP関数をよく使うのですが、ふと最後の引数のFALSEって何を意味しているのかが気になりました。いつも無意識にFALSEを使っていましたが、TRUEはどのような場合に使う必要が生じるのでしょうか?
本をみると「検索の型」を選択するようですが、よく意味がわかりません。具体的にどういうことなのでしょうか?

Aベストアンサー

検索値と完全に一致する値だけを検索するか、その近似値を含めて検索するかを、論理値で指定します。

検索の型でTRUE を指定するか省略すると、検索値が見つからない場合に、検索値未満で最も大きい値が使用されます。

FALSE を指定すると、検索値と完全に一致する値だけが検索され、見つからない場合はエラー値 #N/A が返されます。

Qエクセルで日付を数値データに

エクセルで「日付データ」を表示の変更ではなく「数値データ」に変換したいのですが何か良い方法はありますか?

例えば「20070730」と表示された日付データを別ファイルにコピーして「20070730」と数値データにしたいんです。
※ためしに表示を「数値」にしたら「32792」としてシリアル値が表示されてしまいます。

Aベストアンサー

=value(TEXT(A1,"yyyymmdd"))

QIF関数を使って3つ以上のある範囲内の条件を満たす場合「A」などと入力

IF関数を使って3つ以上のある範囲内の条件を満たす場合「A」などと入力したいです。

たとえば
100以上110以下はA
110以上120以下はB
120以上ならC

=IF(F3=100<110,"A",IF(F3=110<120,"B",IF(F3=120<???,"C")))

こんな感じでしょうか?
よろしく教えてください。

Aベストアンサー

参考までに。

大きい数値あるいは小さい数値から絞り込む方法ではなく、F3が100以上110未満という限定条件の数式にする場合は(これ数式ならIF関数の順に関係されない)、以下のようにAND関数を利用します。

=IF(AND(F3>=100,F3<110),"A",IF(AND(F3>=110,F3<120),"B",IF(F3>120,"C","100未満")))


人気Q&Aランキング