Sub 统计区域() Dim fw1 As String, fw2 As String, fw3 As String, fw4 As String Dim qy1 As Range, qy2 As Range, qy3 As Range, qy4 As Range, qy As Range fw1 = Cells(3, 18) fw2 = Cells(4, 18) fw3 = Cells(5, 18) fw4 = Cells(6, 18) If fw2 <> "" And fw3 <> "" And fw4 <> "" Then Set qy2 = Range(fw2) Set qy3 = Range(fw3) Set qy4 = Range(fw4) Set qy = Union(qy2, qy3, qy4) ElseIf fw2 <> "" And fw3 <> "" Then Set qy2 = Range(fw2) Set qy3 = Range(fw3) Set qy = Union(qy2, qy3) ElseIf fw2 <> "" Then Set qy2 = Range(fw2) Set qy = qy2 Else Set qy1 = Range(fw1) Set qy = qy1 End If qy.Interior.Color = vbYellow End Sub
时间: 2024-04-27 09:24:59 浏览: 15
这段代码是 VBA 代码,用于统计 Excel 工作表中指定区域的单元格,并将这些单元格的背景色设置为黄色。具体来说,代码中定义了四个变量 fw1、fw2、fw3、fw4,分别表示四个区域的名称。然后根据这些区域是否为空,使用 If 语句判断需要选取哪些区域。如果 fw2、fw3、fw4 都不为空,则使用 Union 方法选取这三个区域中的单元格。如果 fw2、fw3 中有一个为空,则只选取两个区域中的单元格。如果 fw2 也为空,则只选取 fw1 中的单元格。最后将选取的单元格的背景色设置为黄色。
需要注意的是,这段代码只是一个子程序,需要将其插入到 VBA 代码中,并在需要统计区域的地方调用它。如果需要修改选取区域的名称或者修改背景色的颜色,可以直接修改代码中的变量值或者常量值。
相关问题
Set qy = Union(qy2, qy3, qy4)中,如果qy3为空怎么办?
如果 qy3 为空,只需将其从 Union 方法中移除即可。具体来说,可以使用如下代码:
```
If fw2 <> "" And fw3 <> "" And fw4 <> "" Then
Set qy2 = Range(fw2)
If Not IsEmpty(Range(fw3)) Then
Set qy3 = Range(fw3)
Set qy = Union(qy2, qy3, qy4)
Else
Set qy = Union(qy2, qy4)
End If
ElseIf fw2 <> "" And fw3 <> "" Then
Set qy2 = Range(fw2)
If Not IsEmpty(Range(fw3)) Then
Set qy3 = Range(fw3)
Set qy = Union(qy2, qy3)
Else
Set qy = qy2
End If
ElseIf fw2 <> "" Then
Set qy2 = Range(fw2)
Set qy = qy2
Else
Set qy1 = Range(fw1)
Set qy = qy1
End If
```
这样,在判断 fw2、fw3、fw4 是否为空时,先使用 IsEmpty 函数判断 fw3 是否为空,如果为空,则将 qy3 从 Union 方法中移除。这样可以保证当 fw3 为空时,qy2 和 qy4 仍能被选取到,并将它们的单元格背景色设置为黄色。
java创建文件 Demo1.txt 写入文本 hello * 创建文件 Demo2.txt 写入文本 Neuedu 将两个文件内容 提取出来输出到 第三个文件 Test.txt 通过文件与流方式实现
好的,以下是 Java 代码实现:
```java
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
// 创建文件 Demo1.txt 并写入文本
FileWriter fw1 = new FileWriter("Demo1.txt");
fw1.write("hello");
fw1.close();
// 创建文件 Demo2.txt 并写入文本
FileWriter fw2 = new FileWriter("Demo2.txt");
fw2.write("Neuedu");
fw2.close();
// 读取 Demo1.txt 和 Demo2.txt 的内容并写入 Test.txt
FileReader fr1 = new FileReader("Demo1.txt");
FileReader fr2 = new FileReader("Demo2.txt");
FileWriter fw3 = new FileWriter("Test.txt");
int c;
while ((c = fr1.read()) != -1) {
fw3.write(c);
}
while ((c = fr2.read()) != -1) {
fw3.write(c);
}
fr1.close();
fr2.close();
fw3.close();
// 输出 Test.txt 的内容
FileReader fr3 = new FileReader("Test.txt");
while ((c = fr3.read()) != -1) {
System.out.print((char) c);
}
fr3.close();
}
}
```
运行该程序后,Test.txt 文件中的内容为:
```
helloNeuedu
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)