20170708xlVBA添加新产品修改公式
Sub ControlInsertProduct()
Dim Wb As Workbook
Dim OneSht As Worksheet
Dim Arr As Variant
Dim i As Long
Arr = Array("农家香菜籽油(20L)", "万家炊大豆油(20L)", "万家炊原香菜籽油(20L)", "压榨菜籽油(20L)")
Set Wb = Application.ThisWorkbook
For Each OneSht In Wb.Worksheets
If IsNumeric(OneSht.Name) Or OneSht.Name = "月销量" Then
For i = LBound(Arr) To UBound(Arr)
InsertNewProduct OneSht, Arr(i)
Next i
End If
Next OneSht
Set Wb = Nothing
Set OneSht = Nothing
End Sub Sub InsertNewProduct(ByVal Sht As Worksheet, ByVal ProductName As String)
Dim InsertCol&, EndCol&, EndRow& '插入列和结束列
Dim CopyStart, CopyEnd '复制的起始列
Dim OrgRng As Range
With Sht
EndCol = .Cells.Find("*", .Cells(1, 1), xlValues, xlWhole, xlByColumns, xlPrevious).Column
EndRow = .Cells.Find("*", .Cells(1, 1), xlValues, xlWhole, xlByRows, xlPrevious).Row
InsertCol = EndCol - 2
CopyStart = EndCol - 5
CopyEnd = EndCol - 3
Set OrgRng = .Range(.Cells(2, CopyStart), .Cells(EndRow, CopyEnd))
OrgRng.Copy
.Cells(2, InsertCol).Insert xlShiftToRight, xlFormatFromLeftOrAbove
.Cells(2, InsertCol).Value = ProductName '修改公式
EndCol = EndCol + 3 For i = 4 To EndRow - 2
If Not .Cells(i, EndCol - 2).Formula Like "*SUM*" Then
Formula = "="
For j = 4 To EndCol - 3 Step 3
Formula = Formula & "+" & .Cells(i, j).Address
Next j
Formula = Replace(Formula, "+", "", , 1)
.Cells(i, EndCol - 2).Value = Formula
End If If Not .Cells(i, EndCol - 1).Formula Like "*SUM*" Then
Formula = "="
For j = 5 To EndCol - 3 Step 3
Formula = Formula & "+" & .Cells(i, j).Address
Next j
Formula = Replace(Formula, "+", "", , 1)
.Cells(i, EndCol - 1).Value = Formula
End If If Not .Cells(i, EndCol - 0).Formula Like "*SUM*" Then
Formula = "="
For j = 6 To EndCol - 3 Step 3
Formula = Formula & "+" & .Cells(i, j).Address
Next j
Formula = Replace(Formula, "+", "", , 1)
.Cells(i, EndCol - 0).Value = Formula
End If Next i
End With Set OrgRng = Nothing
End Sub
20170708xlVBA添加新产品修改公式的更多相关文章
- magento -- 添加新产品时状态默认为激活,库存状态默认为有库存
添加新产品时状态默认为激活 打开文件/app/code/core/Mage/Catalog/Model/Product/Status.php,注释掉“Please Select” /** * Retr ...
- Magento给新产品页面添加分页
本文介绍如何让magento创建一个带分页功能的新到产品页面,方便我们在首页或者其它CMS Page调用和展示新到产品. 在Magento我们经常有的做法是建立一个可以调用新产品的block,然后通过 ...
- Ubuntu添加新用户并给普通用户赋予root新权限
添加新用户 首先用adduser命令添加普通用户: #adduser newusername 只有在root权限才可以添加新用户 修改密码: #passwd username 赋予root权限 方法1 ...
- MySql数据库在表中添加新字段,设置主键,设置外键,字段移动位置,以及修改数据库后如何进行部署和维护的总结
1,为当前已有的表添加新的字段 alter table student add studentName varchar(20) not null; 2,为当前已有的表中的字段设置为主键自增 alter ...
- ANDROID Porting系列二、配置一个新产品
ANDROID Porting系列二.配置一个新产品 详细说明 下面的步骤描述了如何配置新的移动设备和产品的makefile运行android. 1. 目录//vendor/创建一个公 ...
- 【PostgreSQL】PostgreSQL添加新服务器连接时,报错“Server doesn't listen ”,已解决。
PostgreSQL添加新的服务器连接时,报错:
- 一个新人如何学习在大型系统中添加新功能和Debug
文章背景: 今年七月份正式入职,公司主营ERP软件,楼主所在的组主要负责二次开发,使用的语言是Java. 什么叫二次开发呢?ERP软件的客户都是企业.而这些企业之间的情况都有所不同,一套标准版本的企业 ...
- ASP.NET MVC 5 - 给电影表和模型添加新字段
在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entit ...
- [译]:Orchard入门——给网站添加新博客
原文链接:Adding a Blog to Your Site 文章内容基于Orchard 1.8版本 Orchard提供一个博客引擎--这让添加一个新博客到你网站变得非常容易. 本文将介绍怎样添加一 ...
随机推荐
- 20154312《网络对抗》Exp2 后门原理与实践
常见问题快速链接 Handler failed to bind to xxx.xxx.xx.xxx:xxxx 使用Webcam_snap命令提示1411错误,无法正常拍照 常用后门工具实践 Windo ...
- tablix“Tablix1”有一个具有内部成员的详细信息成员
做报表的时候出现了这个错误: 错误 1 tablix“Tablix1”有一个具有内部成员的详细信息成员.详细信息成员只能包含静态内部成员. 解决方案: 原因:在一个报表里面插入两个表格的时候:会出现 ...
- linux服务器---配置bind
配置bind 1.确定已经安装bind软件,需要安装3 个bind.bind-chroot.bind-util [root@localhost wj]# yum install –y bind bin ...
- git常用命令3
一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态git commit 提交git branch -a 查看所有的分支git branch -r 查看 ...
- python之路----模块与序列化模块
认识模块 什么是模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用pyt ...
- 如何用tomcat发布自己的Java项目
如何用tomcat发布自己的Java项目 tomcat是什么?它是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器.我们用Java开发出来的web项目,通过tomcat发布出来,别人就可 ...
- 20145336 张子扬 《网络对抗技术》 web安全基础实践
2014536 张子扬<网络攻防>Exp9 Web安全基础实践 实验准备 开启webgoat 1)开启webgoat,打开WebGoat: java -jar webgoat-contai ...
- ajax请求的同步异步问题
前言 在做项目的过程中遇到一个bug就是:使用了alert语句后,代码才能正确执行,没使用就执行不成功. 后来我就用把console.log,代码就不能正确执行. 于是我就去比较了下consol.lo ...
- <offer4> 04_FindInPartiallySortedMatrix
#include<cstdio> bool Find(int* matrix, int rows, int columns, int number) { bool result = fal ...
- HDU 3404 Switch lights(Nim积)题解
题意:在一个二维平面中,有n个灯亮着并告诉你坐标,每回合需要找到一个矩形,这个矩形xy坐标最大的那个角落的点必须是亮着的灯,然后我们把四个角落的灯状态反转,不能操作为败 思路:二维Nim积,看不懂啊, ...