システムwiki

Excel 2010で働いていますが、Excel 2016で働いていません

Nicolaa 受付中 最終更新日:2021-06-14 17:08

こんにちは、私は誰かが私を助けることができることを願っています.Excel 2010の同じファイル内の下のマクロを実行すると100%が機能しますが、Excel 2016で実行すると、「ランタイムエラー」13 '「タイプの不一致」エラーが表示されます.
マクロに入っているときは、各セクションの上に「ホバー」を介して、それが読んでいるべきであるシートに正しい情報をピックアップします.マクロと青いセクションの下には、エラーがあるところです.
myfind=範囲( "A1:A200")を設定してください.検索(「価格調査日」)
ifでなければmyfindはそれから
myDatesur= range(myfind.address).Offset (,2)
MyDatesUR1= Application.VLookup(MyDatesur、MySheet1.Range( "E34:F700")、2、false)

の場合は終了 MyFind= Range( "A1:A200")を設定します.( "為替レート"、、xlwhole)
ifでなければmyfindはそれから
「基本都市の為替レート」
範囲(MyFind.Address).Offset(、2)= "USD 1= USD 1"
mydtb= 1


X= INSTR(範囲(myfind.address).Offset (,2)、 "=")
y= x + 5
mydtb= mid(範囲(myfind.address).Offset (,2)、y、len(範囲(myfind.address).Offset (,2))-

の場合は終わります

はから移動しました: Office / Excel / /Office 2016

返信リスト(回答:3)

3 #
HansVMV

範囲(myfind.address)はmyfindと同等です.

そしてMID(範囲(myfind.address).Offset(、2)、y、len(範囲(myfind.address).offset(、2))-y)はMID(範囲(myfind.address).offset(範囲(範囲(範囲(myfind.address))に相当します( 、2)、y)= mid(myfind.offset (,2)、y)

メッセージボックスを挿入するかどうかを確認します.

myfind=範囲( "A1:A200")を設定してください.検索(「価格調査日」)
ifでなければmyfindはそれから
mydatesur= myfind.offset (,2)
MyDatesUR1= Application.VLookup(MyDatesur、MySheet1.Range( "E34:F700")、2、false)

の場合は終わります

MyFind= Range( "A1:A200")を設定します.( "為替レート"、、xlwhole)
ifでなければmyfindはそれから
「基本都市の為替レート」
薄暗いv
v= myfind.offset(、-2).Value
v= "USD 1= USD 1"なら、
mydtb= 1


X= INSTR(V、 "=")
y= x + 5
msgbox「値は '"&mid(v、y)&" "です.
mydtb= mid(v、y)

の場合は終わります

応答3# ->にスキップ
1 #
Nicolaa

こんにちはHansv、

返信してくれてありがとう.私は上記を試してみましたが、私はランタイムエラー '1004を取得しました.以下のマクロに入ると、次のようになります.v= myfind.offset(、-2).value

私の最初の要求を読んだ後、私は私がそれにより多くのコンテキストを置くべきです.マクロはファイル内のさまざまなシートを介して実行され、移動する前に別の "Summary"シートにコピーする各シートの特定の為替レートを見つけます.
次のシートなどに.

私はこれであなたの援助を本当に感謝します.

MARCO全体の下には、上記のMSGBOKSが含まれています.

application.ScreenUpdating= false

mySheet1=シートを設定する( "list")
MySheet=シートを設定する(「Mercer Input」)
MySheet.Visible= true
mySheet1.visible= true
ClearMercer
MySheet.Select
MySheet.UnProtect "Carl01"
範囲( "C4:D4").選択
Application.cutCopyMode= false
selection.Autofill Destination:=範囲( "C4:D250")
範囲( "C4:D250").選択
MyRange= Range( "B4"、Range( "B4").

i= 1からmyrange.rows.count
MyCode= MyRange.Cells(i)
myCode= "0-0"であれば


の場合は終了 MyResult= WorksheetExists(MyCode)
myResult= trueの場合、
シート(MyCode).Select
ActiveSheet.cells.Unmerge
ActiveSheet.cells.WrapText= false
ActiveSheet.cells.HorizoNtalAlignment= XLLEFT
シート(MyCode).Range( "A5")= ""
シート(MyCode).Range( "A5").Entirerow.Delete

の場合は終了 シート(MyCode).Range( "A18")= "*"
シート(MyCode).Range( "A15").entirelow.insert

の場合は終了 シート(MyCode).Range( "A17")= "*"
シート(MyCode).Range( "A15:A16").entirerow.insert

の場合は終了 Application.DisplayAlerts= false
範囲( "C9:C10").選択
selection.copy
範囲( "h9").
を選択します selection.pastespecial Paste:= xlpastevaluesandnumberformats、操作:= _
XlNone、SkipBlanks:= false、transpose:= false
Application.cutCopyMode= false
Selection.TextTocourds宛先:=範囲( "H9")、データ型:= xldelimited、_
TextQualifier:= XLDoubleQuote、ConsecutivedELimiter:= false、タブ:= false、_
セミコロン:= false、コンマ:= true、space:= false、その他:= false、fieldInfo _
:= array(アレイ(1,1)、アレイ(2,1))、TrailingMinusNumbers:= true
範囲( "J9").
ActiveCell.Formular1C1= "= Concateenate(RC [-2]、 RC [-1])「
」 範囲( "J9").
selection.copy
範囲( "J10").
を選択してください ActiveSheet.paste
範囲( "J9:J10")を選択します. Application.cutCopyMode= false
selection.copy
範囲( "C9").
を選択します selection.pastespecial Paste:= xlpastevaluesandnumberformats、操作:= _
XlNone、SkipBlanks:= false、transpose:= false
範囲(「D9:F10」).選択
Application.cutCopyMode= false
selection.copy
範囲( "h9").
を選択します selection.pastespecial Paste:= xlpastevaluesandnumberformats、操作:= _
XlNone、SkipBlanks:= false、transpose:= false
範囲( "H9:H10").選択
Application.cutCopyMode= false
Selection.TextTocourds宛先:=範囲( "H9")、データ型:= xldelimited、_
TextQualifier:= XLDoubleQuote、ConsecutivedELimiter:= false、タブ:= false、_
セミコロン:= false、コンマ:= true、space:= false、その他:= false、fieldInfo _
:= array(アレイ(1,1)、アレイ(2,1))、TrailingMinusNumbers:= true
範囲( "J9").
ActiveCell.Formular1C1= "= Concateenate(RC [-2]、 RC [-1])「
」 範囲( "J9").
selection.copy
範囲( "J10").
を選択してください ActiveSheet.paste
範囲( "J9:J10")を選択します. Application.cutCopyMode= false
selection.copy
範囲( "D9:F9").選択
selection.pastespecial Paste:= xlpastevaluesandnumberformats、操作:= _
XlNone、SkipBlanks:= false、transpose:= false
範囲( "h9:k11").選択
Application.cutCopyMode= false
Selection.clearContents
範囲(「E9:F11」).選択
Application.cutCopyMode= false
Selection.clearContents
範囲(「A1」).
を選択します Application.DisplayAlerts= true
シート(MyCode).Select
範囲(「A14:F16」).選択
Application.cutCopyMode= false
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDiagnalup).linestyle= xlnone
selection.borders(xledgeleft).linestyle= xlnone
selection.borders(XledGetOp)
.linestyle= xl continuous
.color=-16777216 .tintandshade= 0
.Weight= Xlthin


selection.borders(XledgeBottom)
.linestyle= xl continuous
.colorIndex= 0
.tintandshade= 0
.Weight= Xlthin


selection.borders(Xledgeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom).linestyle= xlnone
selection.borders(Xledgeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom)
.linestyle= xl continuous
.colorIndex= 0
.tintandshade= 0
.Weight= Xlthin


selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
範囲(「A32:F32」).選択
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom).linestyle= xlnone
selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom)
.linestyle= xl continuous
.colorIndex= 0
.tintandshade= 0
.Weight= Xlthin


selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
範囲(「A35:F35」).選択
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom).linestyle= xlnone
selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom)
.linestyle= xl continuous
.colorIndex= 0
.tintandshade= 0
.Weight= Xlthin


selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
範囲(「A46:F46」).選択
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XLEDGETOP).linestyle= xlnone
selection.borders(XledgeBottom).linestyle= xlnone
selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
selection.borders(XLDIAgnalDown).linestyle= xlnone
selection.borders(XLDIAgnalup).linestyle= xlnone
selection.borders(XLEDGELEFT).linestyle= xlnone
selection.borders(XledGetOp).linestyle= xlnone
selection.borders(XledgeBottom)
.linestyle= xl continuous
.colorIndex= 0
.tintandshade= 0
.Weight= Xlthin


selection.borders(XledGeright).linestyle= xlnone
selection.borders(xlinSideVertical).linestyle= xlnone
selection.borders(XlinSideHorizontal).linestyle= xlnone
'為替レートの日-MyDateExc
MyFind= Range( "A1:A200")を設定します.( "為替レートの日"、、、XLWhole)を見つける( " ifでなければmyfindはそれから
MyDateExc= Range(MyFind.Address).Offset (,2)
MyDateExc1= Application.vlookup(MyDateExc、MySheet1.Range( "E34:F700")、2、false)

の場合は終了 '価格調査日-MyDateSur
myfind=範囲( "A1:A200")を設定してください.検索(「価格調査日」)
ifでなければmyfindはそれから
mydatesur= myfind.offset (,2)
MyDatesUR1= Application.VLookup(MyDatesur、MySheet1.Range( "E34:F700")、2、false)

の場合は終わります

MyFind= Range( "A1:A200")を設定します.( "為替レート"、、xlwhole)
ifでなければmyfindはそれから
「基本都市の為替レート」
薄暗いv
v= myfind.offset(、-2).Value
v= "USD 1= USD 1"なら、
mydtb= 1


X= INSTR(V、 "=")
y= x + 5
MSGBOX「価値は '""&mid(v、y)&"
mydtb= mid(v、y)

の場合は終わります

「都市の為替レート」 範囲(MyFind.Address).Offset (,3)= "USD 1= USD 1"
mydth= 1


mydth= mid(範囲(myfind.address).offset (,3)、y、len(範囲(myfind.address).Offset (,3))-

の場合は終了
の場合は終了 MyFind= Range( "A1:A200")を設定します.( "Cross Rate"、、、XLWhole)を見つける ifでなければmyfindはそれから
「基本都市クロスレート」
myHomecur= left(範囲(myfind.address).Offset (,2)、3)
X= INSTR(範囲(myfind.address).Offset (,2)、 "=")
y= x + 5
MyHostcur= MID(範囲(MyFind.Address).Offset (,2)、x + 2,3)
mybth= mid(範囲(myfind.address).Offset (,2)、y、len(範囲(myfind.address).Offset (,2))-
「ホストシティクロスレート」
MyHTB= MID(範囲(MyFind.Address).Offset(3)、Y、LEN(範囲(MyFind.Address).Offset (,3))-Y)

の場合は終了 「生活屈折率の質の結果」 MyFind= Range( "A1:A200")を設定します.( "Mercer-生活索引の品質"、、xlwhole)
ifでなければmyfindはそれから
myDate2=範囲(myfind.address).Offset(2)
MyDateQOL= Application.VLookup(MyDate2、MySheet1.Range( "G34:H64")、2、false)

の場合は終了 「総索引」
MyFind= Range( "A1:A200")を設定します.(「生活手当の品質は通常、一時和または「パーセンテージ」、「、XLWhole)」
ifでなければmyfindはそれから
myIndex=範囲(myfind.address).Offset(-3,3)

の場合は終了 「生活手当の割合の割合」 MyFind= Range( "A1:A200")を設定します.(「生活率の品質は」、、、XLWhole)
ifでなければmyfindはそれから
myperc= left(範囲(myfind.address).Offset(1)、5)

の場合は終了 MyFind= Range( "B30:B50")を設定します.( "Total Index"、、、XLWhole)を見つける ifでなければmyfindはそれから
MyTotal= Range(MyFind.Address).Offset (,2).Resize (,3)
myutil= range(myfind.address).Offset(3,2).Resize(3,2).
mytpt= range(myfind.address).Offset(4,2).Resize (,3)
myboth= range(myfind.address).Offset(5,2).Resize (,3)

の場合は終了 MySheet.Select
MyRange.Cells(i).Offset (,15)= MyHomecur
myRange.Cells(i).Offset (,16)= MyHostcur
myRange.Cells(i).Offset (,17)= mydtb
myRange.Cells(i).Offset (,17).NumberFormat= "####0.0000 [$"&myhomecur&"]" "" myRange.Cells(i).Offset (,18)= mybth
myRange.Cells(i).Offset (,18).NumberFormat= "## 0.0000 [$"&myhostcur&"]" " MyRange.Cells(i).Offset(、19)= MyDth
myRange.Cells(i).Offset(、19).NumberFormat= "#####0000 [$"&myhostcur&"]" "
myRange.Cells(i).Offset (,20)= myhtb
myRange.Cells(i).Offset (,20).NumberFormat= "######0.0000 [$"&myhomecur&"]" " myRange.Cells(i).Offset (,21)= myIndex
myRange.Cells(i).Offset (,22)= myperc
myRange.Cells(i).Offset (,23)= mydatesur1
MyRange.Cells(i).Offset (,24)= MyDateExc1
myrange.cells(i).Offset (,25)= MyDateQOL
myTotal.copy
MyRange.Cells(i).Offset (,3).pastespecial XLPastevalues
myUtil.COPY
MyRange.Cells(i).Offset(6).pastespecial XLPastevalues
mytpt.copy
MyRange.Cells(i).Offset (,9).pastespecial XLPastevalues
myboth.copy
myRange.Cells(i).Offset (,12).pastespecial XLPastevalues
Application.cutCopyMode= false

の場合は終了 次のi
MySheet.Protect "Carl01"、True、True、True、True mySheet.visible= false
mySheet1.visible= false
シート(「リニア」).
を選択します application.ScreenUpdating= true
終了SUB

応答1# ->にスキップ
2 #
HansVMV

ああ.

v= myfind.offset(、-2).value

があったはずです

v= myfind.offset (,2).value

それについてすみません-私の間違い