我有一个电子表格,其中有几个分配给按钮的宏。在所有宏中,都有一系列相同且可以正常工作的代码,但是在我的一个宏中,我遇到了运行时错误'1004':应用定义错误或对象定义错误。我不明白当相同的代码在同一工作簿中的其他3个宏中如何工作。有人可以帮忙吗
我没有做太多尝试,因为我不知道到底是什么问题。我确实回到了一个工作宏中,并将代码直接从其中复制并粘贴到了这个宏中,以为在我添加新代码时可能有些混乱,但这没有用。我已经逐步完成了代码,我确切地知道了代码的发生位置,但是我不知道为什么。
<template>
<div>
<v-layout id="admin-layout" justify-space-around column>
<v-tabs
v-model="activeFL"
centered
slider-color="blue"
grow
>
<v-tab
v-for="(firstLevel, index) in firstLevels"
:key="index"
ripple
>
Niveau {{ index + 1 }}
</br>
{{firstLevel.name}}
</v-tab>
</v-tabs>
<v-tabs-items v-model="activeFL">
<v-tab-item
v-for="(firstLevel, index) in firstLevels"
:key="index"
>
<v-toolbar
color="pink"
dark
v-for="(secondLevelId, index) in firstLevel.subLevels"
:key="secondLevelId"
>
<v-toolbar-title>{{getSLById(secondLevelId).name}}</v-toolbar-title>
<v-spacer></v-spacer>
</v-toolbar>
<v-card>
<v-container
fluid
grid-list-lg
>
<v-layout row wrap>
<v-flex xs12
v-for="(itemId, index) in currentSL.items"
:key="itemId"
>
<v-card color="blue-grey darken-2" class="white--text">
<v-card-title primary-title>
<div>
<div class="headline">{{getItemById(itemId)}}</div>
</div>
</v-card-title>
</v-card>
</v-flex>
</v-layout>
</v-container>
</v-card>
</v-tab-item>
</v-tabs-items>
</v-layout>
</div>
</template>
<script>
export default {
data () {
return {
name: this.$store.state.user.name,
dialog: false,
error: '',
dialogError: '',
deleteFL: false,
deleteSL: false,
deletinglevel: {},
firstLevels: [],
secondLevels: [],
items: [],
activeFL: 0,
currentSL: {},
currentItem: {}
}
},
created () {
this.getFirstLevels()
this.getSecondLevels()
this.getItems()
},
methods: {
getSLById (id) {
return this.currentSL = this.secondLevels.find(x => x._id === id)
},
getItemById (id) {
return this.currentItem = this.items.find(x => x._id === id)
},
async getFirstLevels () {
try {
const firstLevels = await LevelService.getFirstLevels()
this.firstLevels = Object.keys(firstLevels.data).map((key) => {
return firstLevels.data[key]
})
} catch (e) {
this.error = e.response.data.error
}
},
async getSecondLevels () {
try {
const secondLevels = await LevelService.getSecondLevels()
this.secondLevels = Object.keys(secondLevels.data).map((key) => {
return secondLevels.data[key]
})
} catch (e) {
this.error = e.response.data.error
}
},
async getItems () {
try {
const items = await ItemService.getItems()
this.items = Object.keys(items.data).map((key) => {
return items.data[key]
})
} catch (e) {
this.error = e.response.data.error
}
}
}
}
</script>
在“工作录取表”之后的对与错之间发生 预期的结果是这些选项卡已从我的工作簿中删除。它删除了运输选项卡和工作入学选项卡,然后我得到了错误。就像我说的那样,在本工作簿的其他3个宏中可以找到相同的代码。