Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: hhxq001

[技巧] 如何判断图书是否借出未还

[复制链接]
 楼主| 发表于 2014-8-16 19:50 | 显示全部楼层
zyouong 发表于 2014-8-16 10:57
这个不是数组公式。

如果连续输入00009号,结果只在后面显示一条已借出,应该不能借的都显示已借出才好。
回复

使用道具 举报

 楼主| 发表于 2014-8-16 19:53 | 显示全部楼层
su45 发表于 2014-8-16 17:26
怎么?还给不了最佳?

当显示某一图书不能外借时,提醒最后一次借出的行数,行吗。
回复

使用道具 举报

发表于 2014-8-16 20:08 | 显示全部楼层


还有什么问题,一次说出来!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

 楼主| 发表于 2014-8-16 20:22 | 显示全部楼层
su45 发表于 2014-8-16 20:08
还有什么问题,一次说出来!

又给高手添麻烦哦:如果想限制每个学生最多可以借5本在手,教师8本在手(不是一性次借哦),就是每人没有还回的图书最多5本,超了就提示:该人已达到借阅册数限制。
回复

使用道具 举报

发表于 2014-8-16 20:30 | 显示全部楼层
当然可以做到,但这就是另外一个问题了,应另开帖子了,这个帖子的问题已解决了吧?
回复

使用道具 举报

 楼主| 发表于 2014-8-16 21:07 | 显示全部楼层
本帖最后由 hhxq001 于 2014-8-16 21:14 编辑
su45 发表于 2014-8-16 20:30
当然可以做到,但这就是另外一个问题了,应另开帖子了,这个帖子的问题已解决了吧?


当显示某一图书不能外借时,提醒最后一次借出的行数,行吗。这个没解决啦

要求是最后一次借出的行号。



00005此书已借出,不能再借!
最后一次借出在xx行。
是否重新输入编号?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2014-8-16 22:07 | 显示全部楼层
你看看,折腾了多少次!又修改了:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1 +1 收起 理由
hhxq001 + 1 赞一个!代码版的答案数你牛。

查看全部评分

回复

使用道具 举报

发表于 2014-8-16 22:11 | 显示全部楼层
  1. Sub suwjts()
  2. re:
  3. sm = InputBox("请输入图书编号:", "图书编号查询:")
  4. If sm = "" Then End
  5. sl = Application.CountIf(Range("A:A"), sm)
  6. If sl > 0 Then
  7.     rng = Range("A4", Cells(Rows.Count, "A").End(3).Offset(, 13))
  8.     For i = UBound(rng) To 1 Step -1
  9.         If rng(i, 1) = sm Then
  10.             If rng(i, 9) = "借出" And rng(i, 12) <> "" Then
  11.                 a = i + 3
  12.                 MsgBox sm & " 此书可以外借!"
  13.                 arr = Range("A" & a).Resize(, 3)
  14.                 Range("A" & UBound(rng) + 4).Resize(, 3) = arr
  15.                 ActiveWindow.ScrollRow = UBound(rng) + 4
  16.                 Cells(UBound(rng) + 3, 1).Select
  17.                 Exit For
  18.             ElseIf rng(i, 9) = "" Then
  19.                 a = i + 3
  20.                 MsgBox sm & " 此书可以外借!"
  21.                 ActiveWindow.ScrollRow = a
  22.                 Cells(a, 1).Select
  23.                 Exit For
  24.             ElseIf rng(i, 9) = "借出" And rng(i, 12) = "" Then
  25.                 mb = MsgBox(sm & "此书已借出,不能再借!" & Chr(10) & Chr(10) & "最后一次借出在第" & i + 3 & "行!" & Chr(10) & Chr(10) & "是否重新输入编号?", 4)
  26.                 If mb = 6 Then
  27.                     GoTo re
  28.                 Else
  29.                     Cells(i + 3, 1).Select
  30.                     End
  31.                 End If
  32.             End If
  33.         End If
  34.     Next
  35. Else
  36.     With Sheets("书目")
  37.         Set d = .Range("B:B").Find(sm, , , 2)
  38.         If d Is Nothing Then
  39.             mb = MsgBox("没编号为" & sm & "的图书!" & Chr(10) & Chr(10) & "是否重新输入编号?", 4)
  40.             If mb = 6 Then GoTo re
  41.             End
  42.         Else
  43.             arr = .Range(d, d.Offset(, 2))
  44.             mb = MsgBox(sm & " 此书在书目中存在,未出现在借阅表中,尚未借出!" & _
  45.             Chr(10) & Chr(10) & "书名是:" & arr(1, 3) & Chr(10) & Chr(10) & "是否要外借?", 4)
  46.             If mb = 6 Then
  47.                 i = Cells(Rows.Count, 1).End(3).Row + 1
  48.                 Cells(i, 1).Resize(1, 3) = arr
  49.                 ActiveWindow.ScrollRow = i
  50.                 Cells(i, 1).Select
  51.             Else
  52.                 GoTo re
  53.             End If
  54.         End If
  55.     End With
  56. End If
  57. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2014-8-17 10:48 | 显示全部楼层

分享个人审批表-宏批量生成的方法

su45 发表于 2014-8-16 22:07
你看看,折腾了多少次!又修改了:


在折腾中改进、进步。离大侠又近了一点。

{:011:}

回复

使用道具 举报

 楼主| 发表于 2014-8-17 11:37 | 显示全部楼层
su45 发表于 2014-8-16 22:11

又发现一个问题:
如果一本图书未还00009,输入编号提示不能再借。但如果我先在图书编号列填入这个号00009,再查询,就提示可借呢。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-8 03:59 , Processed in 0.299426 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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