[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『共有のexcelファイル VBA』(まさこ)
共有のexcelファイル VBA
共有設定後のエクセルファイルでエラー400がでてしまいます。
(共有解除すると正常にマクロは動きます)
原因は、共有設定では機能が制限される為と思いますが、セルの結合ができなくてエラーがでます。
☆単一のセルをコピーして、セルを3個結合した箇所に貼り付け☆する為に、
何か回避方法はありますでしょうか?
(セルの背景色と文字色も一緒にコピーしたいです)
以下がエラーのコードの箇所です。(一部を抜粋して掲載)
r = WorksheetFunction.Match(Me.Range("W2"), wk.Columns("A"), 0)
If VarType(wk.Range("A1").Offset(r - 1, 2).Value) = vbString Then Me.Range("AC27").Value = wk.Range("A1").Offset(r - 1, 2).Value Me.Range("AC27").UnMerge ←ここ wk.Range("A1").Offset(r - 1, 2).Copy Destination:=Me.Range("AC27") Me.Range("AC27", "AE27").Merge ←ここ End If
< 使用 Excel:Excel2010、使用 OS:Windows7 >
Aブック シート名:集計
A-B----- W--------AC-AD-AE- AI-AJ-AK AO- AP-AQ AU-AV-AW 1- 2- 日付 ←W2には日付 3- 4-
同様に、W2がブックBのA列に合致した行のE列をAI27:AK27へ 文字色と背景色貼り付け・・・
W2がブックBのA列に合致した行のG列をAO27:AQ27へ 文字色と背景色貼り付け・・・
W2がブックBのA列に合致した行のI列をAU27:AW27へ 文字色と背景色貼り付け・・・
Bブック シート名:管理表1
A--B--C--D--E-F-G-H-I-J- 1- 2- 3- 4- 5- 6-
*A列の日付セルは、結合されてたりと不規則です。例えば、A3とA4の二つが結合セル 、A5:7の3つが結合セル、A8:9の2つが結合セル、等。
(最大でも結合セルは1〜4つまでです)
☆実現したい動作☆
・Aブックの集計シートのAC27:AE30 , AI27:AK30 , AO27:AQ30 , AU27:AW30に文字と背景色を消す
・AブックからBブックを開く
・Aブックのシート集計のW2の日付 が Bブックのすべてのシートに対して、A列に合致するセルを探して(ない場合もある)、合致する行のC列、E列、G列、I列
の文字列と背景色をコピーして、それぞれAC27:AE27 , AI27:AK27 , AO27:AQ27 , AU27:AW27( これらはそれぞれ結合セル)へ貼り付け。
ただし、この時にブックBのA列に合致したセルが結合されていた場合、A1:A2の場合はC1をAC27:AE27へ、C2をAC28:AE28へ、貼り付けしたいです。
E1をAI27:AK27へ、E2をAI28:AK28へ。G1をAO27:AQ27 G2をAO28:AQ28へ。I1をAU27:AW27、I2をAU28:AW28を貼り付け。
もし、A1:A4で結合されていた場合は、C1をAC27:AE28へ、C2をAC:AE28へ、C3ををAC29:AE29へ、C4をAC:AE30へ貼り付けしたいです。
(ちなみに、BブックのC列、E列、G列、I列は単一のセルです)
・ブックを閉じて処理終わり
補足:ブックAにマクロを置いて実行したいです。
ブックAだけは共有設定のファイルです。セルの結合・解除の機能の制限があります。
どうか、ご教授のほどよろしくおねがいします。
この結果が実現できればどのような方法でも構いません。
新しいブックCを使って、セルの結合してから、ブックAに貼り付けであったり、または、一度共有を切って、処理して、共有設定をする等。。。
色々考えていましたが。分からなかったです。よろしくお願いします。
(まさこ) 2017/10/15(日) 09:18
>wk.Range("A1").Offset(r - 1, 2).Copy Destination:=Me.Range("AC27") Range("AC27").Value=wk.Range("A1").Offset(r - 1, 2).Value Range("AC27").Font.Color=wk.Range("A1").Offset(r - 1, 2).Font.Color Range("AC27").Interior.Color=wk.Range("A1").Offset(r - 1, 2).Interior.Color
(マナ) 2017/10/15(日) 09:46
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.