[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2006/01/17(Tue) 23:20
投稿者名:タマネギ戦士
Eメール:
URL :
タイトル:
エクセルのマージ
いつも参考にさせていただております。
質問させていただきますが

エクセルのセルをVBから指定しまして
そのセルがマージしてある場合に
マージ全体の横幅をとりたいんですがなにかいい方法はありませんか?

汎用性を保ちたいのでセルの決め打ちは無しでお願いします

皆様知恵をかしてくださいお願いします。

投稿時間:2006/01/17(Tue) 23:33
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: エクセルのマージ
> エクセルのセルをVBから指定しまして
> そのセルがマージしてある場合に
> マージ全体の横幅をとりたいんですがなにかいい方法はありませんか?

その方法では何か都合が悪いのですか?
まず、自分で試してみては。

投稿時間:2006/01/18(Wed) 00:26
投稿者名:タマネギ戦士
Eメール:
URL :
タイトル:
Re^2: エクセルのマージ
即答ありがとうございます

マージを横にとる方法が思いつかないのです

投稿時間:2006/01/18(Wed) 00:45
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: エクセルのマージ
> マージを横にとる方法が思いつかないのです
横にとるとは、どういう事をいうのですか?
マージしてあるセルの幅の合計の事ですか? 個々の幅を足せばいいのでは?

それと最初から解らない部分を具体的に書くようにして下さい。

投稿時間:2006/01/18(Wed) 03:14
投稿者名:タマネギ戦士
Eメール:
URL :
タイトル:
Re^4: エクセルのマージ
では具体的にエクセルて縦にX横にYマージされてるセルの
横の長さの合計を知る方法ってありませんか?
すいません説明がへたくそで・・・

投稿時間:2006/01/18(Wed) 08:52
投稿者名:YK
Eメール:
URL :
タイトル:
Re^5: エクセルのマージ
こんにちは。

こういうことですか。

x とy はマージされているセルの範囲ないならばOK
x = 2
y = 2
If sht.Cells(x, y).MergeCells Then
    Debug.Print sht.Cells(x, y).MergeArea.Width
End If

投稿時間:2006/01/18(Wed) 10:35
投稿者名:タマネギ戦士
Eメール:
URL :
タイトル:
Re^6: エクセルのマージ
YKさん!ありがとうございます!!
成功しました”MergeArea.Width”しりませんでした。勉強不足ですね俺・・・
ほんとうにありがとうございます。

投稿時間:2006/01/18(Wed) 11:35
投稿者名:タマネギ戦士
Eメール:
URL :
タイトル:
Re^7: エクセルのマージ
もう1つ教えてください。

MergeArea.Widthで取得した値を他の列幅に指定したいんですが

If sht.Cells(x, y).MergeCells Then
    sht.Columns("Z").Width = sht.Cells(x, y).MergeArea.Width
End If

的な感じでいけると思ったんですが
sht.Colmun("Z").Width = sht.Cells(x, y).MergeArea.Width
の部分でエラーがでてしまい実行できません
なにか方法あったらお願いします。

投稿時間:2006/01/18(Wed) 13:09
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^8: エクセルのマージ
> sht.Colmun("Z").Width = sht.Cells(x, y).MergeArea.Width
> の部分でエラーがでてしまい実行できません
> なにか方法あったらお願いします。

そもそもシートオブジェクトに Column プロパティ はありますか?
自分の書いたものを他人に間違い探しを依頼するのは、どうかと思います。
聞くなら、方法とか手段にしないと。

事前バインディング(アーリーバインディング)でコードを手書きで書くように
して下さい。そうすれば、自動メンバ表示などのインテリセンス機能が働いてコードの
間違いに気付くはずです。
方法が解らない場合は、Excel上でマクロを取ってそのマクロを元にコードを書き換えて
下さい(書き換える場合は、こちらの注意書き等を参考にして下さい)
その上でマクロの”この部分の”(くどいですが部分で No.5484 の質問のように
マクロそのままではない)コードはどのように変更したらいいのでしょうかと言った
質問にして下さい。
又、VBA のヘルプ(イルカに聞く)を調べるようにして下さい。
(Excel を初めて扱われるのではないし、ここでの質問も何度目かのようだし...。)

方法論の話なら、自分がExcel上でするならどのようにしますか?
私ならコピペで済ましますが。(それをマクロに取って見ればコードも解る)