Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4300|回复: 14

[已解决]当工作表A某3列等于工作表B某3列时,工作表A的某1列等于工作表B的某1列

[复制链接]
发表于 2014-4-18 22:16 | 显示全部楼层 |阅读模式
本帖最后由 JOB007 于 2014-4-21 00:33 编辑

大家帮我看看我这样写有什么问题,我是想这样的,当工作表“工卡”的A,E,F列=工作表“工价”的A,C,D列时,工作表“工卡”H列=工作表“工价”E列的价钱,但是我怎么写都写不出,其实应该很简单,但小弟学艺未精,很多不懂,还请大家指点,谢谢 当工作表某3列等于工作表某3列时.rar (8.56 KB, 下载次数: 13)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-4-18 22:40 | 显示全部楼层
H2数组公式,下拉
  1. =INDEX(工价!E$2:E$9,MATCH(A2&E2&F2,工价!A$2:A$9&工价!C$2:C$9&工价!D$2:D$9,))
复制代码
回复

使用道具 举报

发表于 2014-4-18 22:46 | 显示全部楼层    本楼为最佳答案   
本帖最后由 冥王 于 2014-4-18 22:49 编辑
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.    Dim d As Object
  3.    Dim myrow As Integer
  4.    Dim r As Integer
  5.    Dim s As Integer
  6.    Dim t As Integer
  7.    Dim i As Integer
  8.    Set d = CreateObject("scripting.dictionary")
  9.    myrow = ThisWorkbook.Sheets("工价").Range("a1").End(xlDown).Row
  10.    r = ThisWorkbook.Sheets("工卡").Range("a1").End(xlDown).Row
  11.    With ThisWorkbook.Sheets("工价")
  12.       For s = 2 To myrow
  13.         d(.Cells(s, "a").Value & .Cells(s, "c").Value & .Cells(s, "d").Value) = .Cells(s, "e").Value
  14.       Next
  15.    End With
  16.    With ThisWorkbook.Sheets("工卡")
  17.       For i = 2 To r
  18.          .Cells(i, "h") = d(.Cells(i, "a").Value & .Cells(i, "e").Value & .Cells(i, "f").Value)
  19.       Next
  20.    End With
  21.    Set d = Nothing
  22. End Sub
复制代码

41747004-字典-当工作表某3列等于工作表某3列时.rar

8.42 KB, 下载次数: 7

回复

使用道具 举报

 楼主| 发表于 2014-4-19 20:42 | 显示全部楼层
as0810114 发表于 2014-4-18 22:40
H2数组公式,下拉

谢谢,不过我想用VBA来实现
回复

使用道具 举报

 楼主| 发表于 2014-4-19 20:45 | 显示全部楼层
本帖最后由 JOB007 于 2014-4-19 20:49 编辑
冥王 发表于 2014-4-18 22:46

谢谢,我要是想再多加一个只工卡H列的空白数据的条件怎么写?我刚才用了SPECIALCELLS(XLCELLTYPEBLANKS)加在.Cells(s, "h").后面,但是运行就其他空白的地方都变成一个数字了
回复

使用道具 举报

 楼主| 发表于 2014-4-20 22:43 | 显示全部楼层
求解答
回复

使用道具 举报

发表于 2014-4-21 00:25 | 显示全部楼层
就是填价格么?

当工作表某3列等于工作表某3列时a.zip (9.12 KB, 下载次数: 7)
回复

使用道具 举报

 楼主| 发表于 2014-4-21 00:36 | 显示全部楼层
su45 发表于 2014-4-21 00:25
就是填价格么?

谢了,是填单价,楼上的仁兄帮我写了,但我还想多加一个条件,就是只填写,H列空白单元格的单价,假如有一个工价表上没有单价,但工卡上有单价,运行程序后,工卡上有单价的工价不会随着运行而改变
回复

使用道具 举报

 楼主| 发表于 2014-4-21 00:39 | 显示全部楼层
su45 发表于 2014-4-21 00:25
就是填价格么?

假如这样,12行的批号在工卡上已经有工价了,但工价表上没有工价,假如运行后,这个工价不会受运行影响而变成空白单元格 当工作表某3列等于工作表某3列时a.zip (10.1 KB, 下载次数: 2)
回复

使用道具 举报

发表于 2014-4-21 09:41 | 显示全部楼层
这样就行了!


当工作表某3列等于工作表某3列时a.zip (10.36 KB, 下载次数: 4)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-15 19:27 , Processed in 0.305709 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表