[[20230927144539]] 『型が一致しません13』(あ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『型が一致しません13』(あ)

Sub 名前けし()

    If Range("AB15:AB250").Value = "名前" Then
            Range("AB5").ClearContents
                ElseIf Range("AB15:AB250").Value = "名前2" Then
                    Range("AB5").ClearContents
                Else
                    Range("AB5").Value = "名前"
                    End If
End Sub

型が一致しませんと表示されたんですがどこが間違っているか分からず…

< 使用 Excel:unknown、使用 OS:unknown >


複数のセルを指定して、そのValueを得るってのは無理じゃないですかね。
いや、取れたとしても配列になっているので。。。順番に読み出さないと無理でしょう。

参考
https://learn.microsoft.com/ja-jp/office/vba/api/excel.range.value
(ゆたか) 2023/09/27(水) 14:53:26


 If Range("AB15:AB250").Value = "名前" Then

 等号の左辺は配列で、右辺が単数値だからでは。(ワークシート上の数式じゃないですからねぇ)

 一体、それで何をやりたい(判定したい)のですか?

(半平太) 2023/09/27(水) 14:55:55


シフトを作っておりまして、例えば山田さんが出勤の日はAB15〜AB250に山田もしくは山田半休と入力すればAB5の山田の名前が消えるようにしたいのです。
(あ) 2023/09/27(水) 15:02:54

 山田さんじゃなくて田中さんだったら? AB15〜AB250 は固定? AB5 は?
 これでは適切なアドバイスはできませんよ。
(xlg) 2023/09/27(水) 15:11:25

 ・・という事は、山田さんの名前は、初めはAB5に入っているってことですよね?

  すると、こんな事かな?

 Sub 名前けし()
     Dim targetName

     targetName = Range("AB5").Value

     If Application.CountIf(Range("AB15:AB250"), targetName) Then
         Range("AB5").ClearContents
     ElseIf Application.CountIf(Range("AB15:AB250"), targetName & "半休") Then
         Range("AB5").ClearContents
     End If
 End Sub

(半平太) 2023/09/27(水) 15:14:34


有難うございます!本当に助かりました。
因みに関数でもできますか?COUNTIFでしてみたんですけど複数条件で出来なくて…
山田はAB5田中はAB6といった風に14まで続いております。
(あ) 2023/09/27(水) 15:30:35

 >因みに関数でもできますか 

 ワークシート関数でセルをクリアにするなんて事はできません。
 (ユーザー定義関数なら可能・・まぁ、実体はVBAですからねぇ・・)

 Sub 名前けし()
     Dim targetCell As Range

     For Each targetCell In Range("AB5:AB14")
         If targetCell <> "" Then '空白ならスキップ

             If Application.CountIf(Range("AB15:AB250"), targetCell) Then
                 targetCell.ClearContents
             ElseIf Application.CountIf(Range("AB15:AB250"), targetCell.Value & "半休") Then
                 targetCell.ClearContents
             End If
         End If
     Next
 End Sub

 ※実地テストはしておりません。あしからず。

(半平太) 2023/09/27(水) 15:47:35


ですよね...(;_;)
有難うございます
(あ) 2023/09/27(水) 15:58:40

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.