質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

解決済

3回答

3788閲覧

C# if文の条件文について

yyymmm0719

総合スコア13

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2019/04/04 14:23

初歩的な質問失礼します。
社内の既存プログラムの修正を行っています。
if文を追加するにあたり、条件文にbool値を使用したいのですがうまくいきません。
何かが不足している気がしますがわかりませんでした。
よろしくお願いいたします。

発生している問題・エラーメッセージ

引数を1個指定できる、メソッド 'Nengetsu'のオーバーロードはありません
(num)を削除すると、演算子 !をメソッドグループの型のオペランドに適用することはできません

該当のソースコード

C#
ソースコード
private static void Validate(string field, int beforeDengyo, ImportDataItem Item)
{
switch (Item.ITEM_ID)
{
// 伝票日時
case "DEN_DATE":
CheckDate(field);
break;
}
}

private static void CheckDate(string field)
{
int num = Henkan.StrToInt(field);

if (!Nengetsu(num))
{
throw new Exception("年月が不一致です。 [" + field + "]");
}
}

/// <summary>
/// 年月が同年月か確認する
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
private static bool Nengetsu(int num, C1FlexGrid fgdList)
{
Row row = fgdList.Rows[1];
string s1 = Henkan.StrToStr(row["DEN_DATE"]);
s1 = s1.Replace(".", "");
string s;
s = Convert.ToString(num);
string Moto = s1.Substring(0, 6);
string NenGetsu = s.Substring(0, 6);

if (Moto == NenGetsu) { return true; } return false; }

試したこと

条件文の(num)を削除してみたがうまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

コードの下の方を見ると、Nengetsuには引数が2つ必要なのに1つしか指定していないからエラーです。

プログラムを読まずに、直感で修正するのは止めた方が良いと思います。

投稿2019/04/04 14:29

otn

総合スコア84505

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yyymmm0719

2019/04/04 15:57

ご回答ありがとうございます。 条件文のなかに1つしか指定いないためのエラーということですね。 じゃあ何をもう1つ加えるというところですぐに分からないので勉強したいと思います。 おっしゃる通り、まだまだ読み解く能力がなく直感で修正してしまいました。 アドバイスありがとうございます。
guest

0

Nengetsuは引数が2つですよ

投稿2019/04/04 14:28

YAmaGNZ

総合スコア10242

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yyymmm0719

2019/04/04 15:58

ご回答ありがとうございます。 基礎的な質問で申し訳ありません。
guest

0

エラーの理由は、他の方の回答の通りと思います。

ところで、Visual stdio だったら、該当箇所にマウスを持っていくと、色々と教えてくれると思いますが、見ていませんか?

投稿2019/04/04 15:02

pepperleaf

総合スコア6383

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yyymmm0719

2019/04/04 15:51

ご回答ありがとうございます。 おっしゃる通り、条件文のところがエラーで赤線になりマウスを持ってくと修正パターンがいくつか出ましたが別箇所でエラーになり解決とはいきませんでしたが参考にしてみたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問