检查是否设置了工作簿变量

时间:2020-03-06 12:43:26

标签: excel vba

我有一个带有可选工作簿参数的子项。我希望map检查是否传递了该变量,如果没有,请将该变量设置为活动工作表。

If

我尝试过的事情包括:

Sub SaveWorkbook(NewPathName As String, Optional Workbook As Workbook) 'This is very simplified, the real thing has various other parameters If IsNull(Workbook) Then Set Workbook = ActiveWorkbook 'Then loads more stuff End Sub
IsNull(Workbook)
IsEmpty(Workbook)

没有触发if语句,因此代码尝试将Workbook = Nothing设置为Empty继续,然后出现错误。

2 个答案:

答案 0 :(得分:2)

请勿将单词“ Workbook”用作变量名称。像这样尝试:

<!DOCTYPE html>
<html>
<head>
  <title>clientell</title>
  <meta charset="UTF-8">
  
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>


</head>
<body>
  <div class="row allyu-support-groups">
    <div class="column support-group">
    <div class="card">
        <img src="https://dev.allyu.org/wp-content/themes/thrive-nouveau-child/img/avatar.svg" class="support-group-avatar" />
        <h3>Card 5</h3>
        <p>Some text</p>
        <p>Some text</p>
    </div>
    </div>

    <div class="column">
    <div class="card">
        <img src="https://dev.allyu.org/wp-content/themes/thrive-nouveau-child/img/avatar.svg" class="support-group-avatar" />
        <h3>Card 6</h3>
        <p>Some text</p>
        <p>Some text</p>
    </div>
    </div>

    <div class="column">
    <div class="card">
        <img src="https://dev.allyu.org/wp-content/themes/thrive-nouveau-child/img/avatar.svg" class="support-group-avatar" />
        <h3>Card 7</h3>
        <p>Some text</p>
        <p>Some text</p>
    </div>
    </div>

    <div class="column">
    <div class="card">
        <img src="https://dev.allyu.org/wp-content/themes/thrive-nouveau-child/img/avatar.svg" class="support-group-avatar" />
        <h3>Card 8</h3>
        <p>Some text</p>
        <p>Some text</p>
    </div>
    </div>
</div>
</div>




<style>
/* Float four columns side by side */
.column {
  float: left;
  width: 25%;
  padding: 20px;
}

/* Remove extra left and right margins, due to padding */
.row {margin: 0 -5px;}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}

/* Responsive columns */
@media screen and (max-width: 600px) {
  .column {
    width: 100%;
    display: block;
    margin-bottom: 20px;
  }
}

/* Style the counter cards */
.card {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  padding: 16px;
  text-align: center;
  border: 1px solid #97c3d4;
  background-color: #fff;
}

.row.allyu-support-groups .column {
    display: inline-block;
    text-align: center;
    margin: 1%;
    padding: 0;
    width: calc(25% - 2%);
}

.row.allyu-support-groups .column img {
    width: 100%;
    height: auto;
    max-width: 100px;
}

.row.allyu-support-groups{position: relative;top:300px;}

</style>


<script>

$(document).ready(function(){

    $(".row.allyu-support-groups").animate({top: "0px"});
 

});
</script>

</body>
</html>

答案 1 :(得分:1)

在VBA中,仅当将参数声明为Variant时,isMissing函数才起作用。参见description

这应该有效:

Sub SaveWorkbook(NewPathName As String, Optional Workbook As Variant)
    'This is very simplified, the real thing has various other parameters

    If isMissing(Workbook) Then Set Workbook = ActiveWorkbook

    'Then loads more stuff
End Sub
相关问题