Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4684 / 13646 ツリー ←次へ | 前へ→

【55221】IF文の逆は? きたさん 08/4/22(火) 22:17 質問[未読]
【55222】Re:IF文の逆は? かみちゃん 08/4/22(火) 22:21 発言[未読]
【55224】Re:IF文の逆は? きたさん 08/4/22(火) 22:38 質問[未読]
【55226】Re:IF文の逆は? かみちゃん 08/4/22(火) 22:51 発言[未読]
【55227】Re:IF文の逆は? きたさん 08/4/22(火) 23:05 質問[未読]
【55228】Re:IF文の逆は? かみちゃん 08/4/22(火) 23:11 発言[未読]
【55231】Re:IF文の逆は? きたさん 08/4/23(水) 0:24 お礼[未読]

【55221】IF文の逆は?
質問  きたさん  - 08/4/22(火) 22:17 -

引用なし
パスワード
   IF文は『もし…であれば』
逆に『もし…でなければ』というふうにしたければ
どうしたらいいですか?

【55222】Re:IF文の逆は?
発言  かみちゃん  - 08/4/22(火) 22:21 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>IF文は『もし…であれば』
>逆に『もし…でなければ』というふうにしたければ
>どうしたらいいですか?

If … Then
の逆は、
If Not … Then
です。

【55224】Re:IF文の逆は?
質問  きたさん  - 08/4/22(火) 22:38 -

引用なし
パスワード
   かみちゃんさんありがとうございます。

If Cells(2, c).Borders(xlEdgeBottom).LineStyle <> xlNone Then
 MsgBox "OK"
でセルに罫線があるかを見ることができましたが、

If Not Cells(1, c).Borders(xlEdgeBottom).LineStyle <> xlNone Then
 MsgBox "OK"
でセルに罫線がないかを見ることができませんでした。

どうしてでしょうか?

【55226】Re:IF文の逆は?
発言  かみちゃん  - 08/4/22(火) 22:51 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>If Not Cells(1, c).Borders(xlEdgeBottom).LineStyle <> xlNone Then
> MsgBox "OK"
>でセルに罫線がないかを見ることができませんでした。
>

>どうしてでしょうか?

IF A <> B Then
は、もしAとBが等しくなければ となります。
一方、逆に
IF Not A <> B Then
とすると、もしAとBが等しくなければ「でない」 となります。
(ややこしい表現でしょうか)
つまり、もしAとBが等しければ となるからです。

なお、なんとなく、しようとしていることが、55216の質問に似ているような
気もします。

【55227】Re:IF文の逆は?
質問  きたさん  - 08/4/22(火) 23:05 -

引用なし
パスワード
   55216の質問で罫線を利用しよう!って閃きました☆笑

1列に罫線がなくて40列目に罫線がある場合にメッセージを
表示させたいのですが何も表示されません・・・
なぜでしょうか?

Sub Macro1()

Dim a As Integer
Dim c As Integer
  
  c = 11
  
Do While a < 100

  If Cells(40, c).Borders(xlEdgeBottom).LineStyle <> xlNone Then
    If Not Cells(1, c).Borders(xlEdgeBottom).LineStyle <> xlNone Then
    MsgBox "OK"
    End If
  End If
  
  a = a + 1
  c = c + 1
Loop

End Sub

【55228】Re:IF文の逆は?
発言  かみちゃん  - 08/4/22(火) 23:11 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>1列に罫線がなくて40列目に罫線がある場合にメッセージを
>表示させたいのですが何も表示されません・・・

Cells(x, y)
は、xが行で、yが列です。
行と列が逆のような気がします。

If … Then
 MsgBox "OK"
Else
 MsgBox "NG"
End If
というような書き方をして確認してもいいかもしれません。

【55231】Re:IF文の逆は?
お礼  きたさん  - 08/4/23(水) 0:24 -

引用なし
パスワード
   できましたありがとうございます。

4684 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free