ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3445|回复: 26

[求助] 如何做到这种词频统计效果(已解决)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-3-17 11:19 | 显示全部楼层 |阅读模式
本帖最后由 wwin80 于 2020-3-19 11:27 编辑

老师好,

如链接所示的界面可以统计词频,我想vba应该可以达到此功能,请问老师怎么做到呢(防止这个链接不能使用后,还能进行工作操作)

链接地址:https://www.amz123.com/tools-wordcounter

这个功能实现的步骤是:

第一步,将需要分析的文本粘贴进文本框

案例文本:

SUPERIOR WATCHING EXPERIENCE: Leisure 3 Projector is Powered by MStar Advanced Color Engine. 2019 upgraded LED lighting provides +60% brightness than ordinary projector. Supporting 1920x1080 resolution which is ideal for home entertainment. Not recommend for PowerPoint or other office presentation.

MULTIMEDIA PORTABLE PROJECTOR: VANKYO Leisure 3 projectors is fit for playing videos, TV series, photos sharing, football matches etc. It can be easily connected with your smartphone, PS3, PS4, X-Box ONE or Wii to enjoy BIG games. A customized bag is designed for you to carry and store it easily.

BIG SCREEN SIZE EXPERIENCE: It provides a watching size from 32” to 170” with the projection distance between 4.9ft to 16.4ft. A projection distance of about 6.5 ft is the recommended viewing distance.

FAN NOISE SUPPRESSION SYSTEM: VANKYO projectors are equipped with an innovative cooling system with heat dispersion, as well as a noise suppression technology which cuts fan sound in half. Power input : 100V-240V 50/60Hz

SMARTPHONE CONNECTION AVAILABLE: No need to install any app, you can enjoy convenient smartphone connection. When connect with iPhone, an extra Lightning to HDMI adapter is needed. When connect with Android phone, an extra Micro USB/Type C to HDMI adapter is needed. (Adapter is sold separately).

2020-03-17 11_06_30-单词词频统计工具 - AMZ123.png

第二步,分析(第一步)的文本,得到分析结果(见截屏)

分析结果可以按照“一个单词”,“两个单词”,“三个单词”,3种模式进行统计(见截屏)

每种模式可以自定义选择排名多少的分析结果(见截屏)

每种模式可以选择去“语法词”(语法词包括:in/on/under/before/after/an/a/the等等)(见截屏)

进行词频统计时,忽略标点符号


非常感谢老师在百忙之中提供宝贵帮助

祝老师:健康,平安,快乐

TA的精华主题

TA的得分主题

发表于 2020-3-17 12:06 | 显示全部楼层
把每一个词 存入二维数组,一个存词,一个存次数.

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-3-17 12:46 | 显示全部楼层
哈哈 谢谢 #心电感应# 老师又为我审核通过帖子,非常感谢您

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-3-17 12:47 | 显示全部楼层
boy8199 发表于 2020-3-17 12:06
把每一个词 存入二维数组,一个存词,一个存次数.

非常感谢老师回复,能帮助提供代码吗 谢谢您

TA的精华主题

TA的得分主题

发表于 2020-3-17 12:51 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2020-3-17 12:56 | 显示全部楼层
'无法判断是否为词组,需要规则,,,

Option Explicit

Sub test()
  Dim arr, dic, i, j, t, txt As String, cnt, mark
  Set dic = CreateObject("scripting.dictionary")
  mark = Split(", . ; : ?") '标点符号,可添加,中间用单空格隔开
  txt = "a b c      s A c C d    c c d f w  " '单词,中间空格隔开,空格数不限
  For i = 0 To UBound(mark)
    txt = Replace(txt, mark(i), Space(1))
  Next
  arr = Split(LCase(txt)) '小写匹配
  For i = 0 To UBound(arr)
    If Len(arr(i)) Then dic(arr(i)) = dic(arr(i)) + 1: cnt = cnt + 1
  Next
  arr = Application.Transpose(Array(dic.keys, dic.items, dic.items))
  For i = 1 To UBound(arr, 1) - 1
    For j = i + 1 To UBound(arr, 1)
      If arr(i, 2) < arr(j, 2) Then
        t = arr(i, 1): arr(i, 1) = arr(j, 1): arr(j, 1) = t
        t = arr(i, 2): arr(i, 2) = arr(j, 2): arr(j, 2) = t
      End If
    Next
    arr(i, 3) = Round(arr(i, 2) / cnt, 4)
  Next
  arr(i, 3) = Round(arr(i, 2) / cnt, 4)
  [c:c].NumberFormatLocal = "0.00%"
  With [a:c]
    .ClearContents
    .Resize(UBound(arr, 1), 3) = arr
  End With
End Sub

评分

5

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-3-17 13:26 | 显示全部楼层
一把小刀闯天下 发表于 2020-3-17 12:56
'无法判断是否为词组,需要规则,,,

Option Explicit

哈哈 好久没看到小刀老师在我的帖子上留言了,谢谢小刀老师

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-3-17 13:47 | 显示全部楼层
一把小刀闯天下 发表于 2020-3-17 12:56
'无法判断是否为词组,需要规则,,,

Option Explicit

您好小刀老师,
非常感谢您在百忙之中提供宝贵帮助

我的实际应用如附件所示,工作步骤为:

(1)复制 d列 的 d2单元格到最后一个非空单元格(需要分析的数据)

(2)将分析得到的结果按照已有格式进行显示
例如:“1个单词”,按照从高到低依次显示词组,词频,比例(参考附件截屏)
同时生成“2个单词”对应的词组,词频,比例
“3个单词”对应的词组,词频,比例
2020-03-17 13_40_14-#1转化点调研表_通用模板.xlsm - Excel.png

您能帮助将代码达到以上的效果吗

非常感谢您,小刀老师

#1转化点调研表_通用模板.zip

31.06 KB, 下载次数: 28

TA的精华主题

TA的得分主题

发表于 2020-3-17 14:27 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
你这要求说着容易,实际很不容易的,有现成的商业词频统计软件~~~~~~词组是什么,这你得定义的~~~要不刀神再厉害也没用,

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-3-17 14:43 | 显示全部楼层
FOB_FN_L 发表于 2020-3-17 14:27
你这要求说着容易,实际很不容易的,有现成的商业词频统计软件~~~~~~词组是什么,这你得定义的~~~要不刀神 ...

谢谢老师回复,是的,您说的对,但是我担心这个商业软件后面不再运行

只能是非常非常感谢小刀老师
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-29 09:45 , Processed in 0.055578 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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