« エクセル家系図紹介サイト | メイン

2018-12-24

エクセル家系図2019(ver5)

エクセル家系図2019(ver5)公開します。

変更点は
 ①表示関係(VBA自動配置)の不具合を修正しました。
 ②サンプルデータをなくしました。

Ws000000

ダウンロードはこちら(vectorサイトにリンク)

トラックバック

このページのトラックバックURL:
http://app.ic-blog.jp/t/trackback/35266/34163497

エクセル家系図2019(ver5)を参照しているブログ:

コメント

こんばんは。
エラーを確認しました。

当初、エラーが出た場合、終了するようにしていましたが、
キャンセル以外のエラーを確認するためOn Error GoToを無効にしていて、直すのを忘れていました。

Sub 旧バージョンデータコピー()
'
'On Error GoTo ErrorHandler ←最初の'を削除することで解消します。

ご連絡ありがとうございます。
また何かございましたら、よろしくお願いいたします。

Ver3.8で作成したデータをVer5でデータ取り込みを行った際に
下記のようなマクロエラーが発生しました。
一度ご確認のほどよろしくお願いいたします。

【再現手順】
1.「データ取り込みボタン」を押下
2.表示されたダイアログのキャンセルボタンを押下
3.マクロエラー発生し、下記のメッセージが表示される。
実行時エラー'9'
インデックスが有効範囲にありません。

補足:上記手順の2で表示されているダイアログの×ボタン等の
キャンセルボタン以外のダイアログ終了処理でもエラーは発生しました。

【エラー発生個所】
関数「旧バージョンデータコピー」の下記ロジックにて、
「コピー元ファイル」がEmpty値になっている為。

tojiru:

Windows(コピー元ファイル).Activate

【暫定対処】
その1:修正量を最小にする場合
選択されたファイル数をカウントしているロジックを修正

If .SelectedItems.Count > 0 Then
.Execute
Else
'GoTo tojiru ' -> ここをコメント化
Exit Sub ' -> ここを追加
End If

その2:処理終了に関する処理を他の箇所と同様にする場合
その1で修正する個所のIf~Else~End Ifをすべてコメントし、
下記のロジックを追加

If .SelectedItems.Count = 0 Then End
.Execute


その1、その2共に修正後、【再現手順】に記載している手順を行って
マクロエラーが発生しなかったことが確認できました。

回答が遅くなり申し訳ありません。
頂いた修正内容を適用させたことで、
報告内容の不具合が発生しないことを確認致しました。

投稿後に再度動作確認をしている際に気づいたのですが、
報告内容が一部不正確でした。

不具合内容の正確な内容は、下記の通りでした。

兄弟1~兄弟9:条件が成立するので、背景色が黄色になる。
兄弟10:違う条件式が成立していた(Mid(CC, 5, 3) = "000")ので、たまたま背景色が黄色になっていた。
兄弟11~:条件が成立しないので、背景色が黄色にならない。

対応頂きありがとうございました。

バルカさま
こんにちは。不具合確認しました。兄弟を10人以上登録できるようにしたときに修正していませんでした。

もし、VBAが修正できれば、
自動レイアウトで下記の部分をコピーして修正してください。(339行目から)

Select Case Worksheets("設定").Range("A26")

Case 1
If Mid(CC, 5, 3) = "000" Or Mid(CC, 4, 2) = "25" Or Mid(CC, 4, 1) & Mid(CC, 6, 1) = "30" Or Mid(CC, 4, 1) & Mid(CC, 6, 1) = "40" Then
With Range(Cells(Y + 1, X), Cells(Y + 3, X + 1)).Interior
.ColorIndex = 36
End With
End If

Case 2
If Mid(CC, 5, 3) = "000" Or Mid(CC, 4, 2) = "25" Or Mid(CC, 4, 1) & Mid(CC, 6, 1) = "30" Or Mid(CC, 4, 1) & Mid(CC, 6, 1) = "40" _
Or Mid(CC, 4, 2) & Mid(CC, 6, 1) & Mid(CC, 8, 1) = "2030" Or Mid(CC, 4, 2) & Mid(CC, 6, 1) & Mid(CC, 8, 1) = "2040" Then
With Range(Cells(Y + 1, X), Cells(Y + 3, X + 1)).Interior
.ColorIndex = 36
End With
End If

Case 3
If Mid(CC, 5, 3) = "000" And Mid(CC, 4, 2) <> "40" Or Mid(CC, 4, 2) = "25" Then
With Range(Cells(Y + 1, X), Cells(Y + 3, X + 1)).Interior
.ColorIndex = 36
End With
End If

--------
追加したのが
Or Mid(CC, 4, 1) & Mid(CC, 6, 1) = "40"

Or Mid(CC, 4, 2) & Mid(CC, 6, 1) & Mid(CC, 8, 1) = "2040"

And Mid(CC, 4, 2) <> "40"

修正できないようでしたら、再度連絡お願いします。

こんばんは。
家系図作成に興味を持ち、使わせていただいております。
Ver5.0を使用しているのですが、直系の兄弟が12人以上いる場合、
背景色パターン1、2の時に12番目以降の人の背景色が傍系の色になってしまいました。

コードからの判定が全てFalseになっている為、
背景色が直系の色に変更されないと思われます。

現状、パターン3で回避しておりますが、仕様なのかも含めてご確認をお願いできないでしょうか?

よろしくお願いいたします。

コメントを投稿