0
年の2年でない日付の列をすべて非表示にしたい。それは正しいアプローチかどうかわかりませんが、私はExcelプログラミングについて何も知らなかったので、このVBAスクリプトを作成しましたが、うまくいかないような調査を行っています:年の列を非表示にする
「=のOcultarFechas(B2:AA2)」Function OcultarFechas(Range)
Rg1 = Range ' B2:AA2
Flag = "ok"
For Each c1 In Range(Rg1).Cells
If Year(c1) <> Year(Date) Then
Columns(c1.Column).EntireColumn.Hidden = True
Else
Flag = "notok"
End If
If Flag = "notok" Then Exit For
Next c1
End Function
私が、スプレッドシートを開いたが、今私が思うに、このコードで私のようなセルに関数を呼び出す必要があるときにスクリプトが実行されることが好ましいだろう。
PS。現在の年が見つかったときにforループを終了し、その列から非表示にする必要があります。
私はこれを試してみたし、かなりいい作品、一つだけ問題が1列が隠されていたが、そこの内部には、コンテンツがなかったが、私はそれを再フォーマット可能性があり、それが完璧に動作しますしました。スプレッドシートを開くたびに自動的にこれを行うことはできますか?ありがとう – Fjallbacka
ソリューションを編集しました。見てください。 – sktneer
Row2のその列にあるセルが空の場合は、列をスキップするには、IFステートメントを--- If Year(セル(2、c)) ""その後、 –
sktneer