文档库 最新最全的文档下载
当前位置:文档库 › Excel_VBA程序开发自学通正文401-471页

Excel_VBA程序开发自学通正文401-471页

Excel_VBA程序开发自学通正文401-471页
Excel_VBA程序开发自学通正文401-471页

Item = Item + 1 '累加变量

'将查找到到了成绩和姓名罗列在D、E列

Cells(Item, "D") = rng.Offset(0, -1).Text

Cells(Item, "E") = rng.Text

End If

Next rng

'记录时间

MsgBox Format(Timer - Tim, "0.00秒")

End Sub

以上过程采用循环、逐个赋值的方式将区域中查询到的目标导出到单元格,在笔者的计算机中查询时间超过1.5秒钟。

Sub 查询不及级人员2() '数组方式

Dim arr1 As Variant, arr2() As Variant, Item As Integer, MaxRow As Integer, Counter As Integer

Dim Tim As Long

Tim = Timer

'记录最大行数

MaxRow = Cells(Rows.Count, "B").End(xlUp).Row

'将成绩赋与数组,后续的操作都基于数组

arr1 = Range("A2:B" & MaxRow)

'遍历数组中所有成绩

For Item = 1 To MaxRow - 1

'如果成绩小于60

If arr1(Item, 2) < 60 Then

'累加计数器

Counter = Counter + 1

'重新分配数组空间,只能更新末维的大小,所以数组是横向的,两行多列

ReDim Preserve arr2(1 To 2, 1 To Counter)

'对第二个数组第一行、最末维赋值

arr2(1, Counter) = arr1(Item, 1)

'对第二个数组第二行、最末维赋值

arr2(2, Counter) = arr1(Item, 2)

End If

Next

'将第二个数组转置后导出到D列

Cells(1, "D").Resize(Counter, 2) = WorksheetFunction.Transpose(arr2)

MsgBox Format(Timer - Tim, "0.00秒")

End Sub

以上过程首先将区域转化成数组,然后在数组中进行查询,且将查到的目标数组赋与新的数组。当找到所有目录后一次性将数组的值导出到区域中。该过程在笔者的计算机上执行时间在0.3秒钟左右。

图13.6 查找所有不及格人员姓名与成绩罗列在D、E列

在第二个过程中,使用数组后已经大大地提升查询速度。但是在循环体中使用ReDim Preserve 语句,相当于声明2000次数组,它仍然需要消耗时间。本例也可以改为数组的声明方式,避过多次重置数组大小这个问题。代码如下:

Sub 查询不及格人员3() '数组方式

Dim arr1 As Variant, arr2() As Variant, Item As Integer, MaxRow As Integer, Counter As Integer

Dim Tim As Long, j As Integer

Tim = Timer

'记录最大行数

MaxRow = Cells(Rows.Count, "B").End(xlUp).Row

'记录不及格的人员个数

j = WorksheetFunction.CountIf(Range("A2:B" & MaxRow), "<60")

'将成绩赋与数组,后续的操作都基于数组

arr1 = Range("A2:B" & MaxRow)

'重置第二个数组大小,两列多行

ReDim arr2(1 To j, 1 To 2)

For Item = 1 To MaxRow - 1

'如果成绩小于60

If arr1(Item, 2) < 60 Then

Counter = Counter + 1

'对第二个数组第一列、最末行赋值

arr2(Counter, 1) = arr1(Item, 1)

'对第二个数组第二列、最末行赋值

arr2(Counter, 2) = arr1(Item, 2)

End If

Next

'数组是多行两列的纵向数组,所在不需要转置

Cells(1, "D").Resize(Counter, 2) = arr2

MsgBox Format(Timer - Tim, "0.00秒")

End Sub

以上过程首先利用工作表函数CountIf计算区域中不及格人数,然后一次性对数组分配空间,使其行数等于不及格人数,从而免循环2000次重新分配数组空间。同时也解决了转置的问题。

本例文件参见光盘:..\ 第十三章\查找不及格人员.xlsm

13.2.5L B o u n d/U b o u n d:获取数组的上下界

LBound函数和Ubound函数分别用于计算数组的最小下界(或称下标)和数组的最大上界,在VBA的数组应用中,它们的应用极广。

1. LBound

LBound函数返回一个Long型数据,其值为指定数组维可用的最小下标。语法如下:

LBound(arrayname[, dimension])

第一参数表示数组变量的名称,第二参数是可选参数,用于指定返回哪一维的下界。如果省略当做1处理。例如:

Dim A(1 To 10, 3, 1 To 4,-2 To 5)

LBound(A, 1) ——返回1,表示第一维的下界

LBound(A, 2) ——返回1,表示第二维的下界

LBound(A, 4) ——返回-2,表示第车维的下界

2. Ubound

Ubound函数返回一个Long型数据,其值为指定数组维可用的最大上标。语法如下:

Ubound (arrayname[, dimension])

第一参数表示数组变量的名称,第二参数是可选参数,用于指定返回哪一维的上界。如果省略当做1处理。例如:

Dim A(1 To 10, 3, 1 To 4,-2 To 5)

Ubound (A) ——返回10,表示第一维的上界

Ubound (A, 2) ——返回3,表示第二维的上界

Ubound (A, 5) ——返回-2,表示第车维的下界

13.2.6S p l i t/J o i n:文本与数组转化

Split函数与Join函数可以实现字符串与文本的转换。

1. Split函数

Split函数用于返回一个下标从零开始的一维数组,它包含指定数目的子字符串。语法如下:Split(expression[, delimiter[, limit[, compare]]])

其中各参数含义如下:

表13-1 Split函数参数详解

部分描述

expression 必需的。包含子字符串和分隔符的字符串表达式。如果expression是一个长度为零的字符串(""),Split则返回一个空数组,即没有元素和数据的数组

delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的expression字符串

limit 可选的。要返回的子字符串数,–1表示返回所有的子字符串

compare 可选的。数字值,表示判别子字符串时使用的比较方式

例如将字符串“中国,广东,广州”转换成包括三个元素的数组,可以使以下语句:Split("中国,广东,广州", ",")——注意其中逗号是全角

如果需要验证这个数组,有三种方式:

[a1:c1] = Split("中国,广东,广州", ",")——将数组赋值到区域

MsgBox IsArray(Split("中国,广东,广州", ","))——利用IsArray判断

MsgBox UBound(Split("中国,广东,广州", ","))——计算数组的最大上标

2. Join

Split函数返回一个字符串,该字符串是通过连接某个数组中的多个子字符串而创建的。语法如下:

Join(sourcearray[, delimiter])

其第一参数包含被连接子字符串的一维数组,第二参数是可选参数,用于指定分隔子字符串的字符。如果忽略该项,则使用空格(" ")来分隔子字符串。如果delimiter是零长度字符串(""),则列表中的所有项目都连接在一起,中间没有分隔符。

例如将一个一维数组转换成字符串可以用方式:

Join(Array("中国", "广东", "广州"), "-")——转换后字符串为“中国-广东-广州”

Join(Array("中国", "广东", "广州"), ",")——转换后字符串为“中国,广东,广州”

但是Split函数处理数组时也有一个限制,当数组是通用区域转换得来的就不能对数组的元素转换成字符串。例如以下合并区域的过程无法执行完成:

Sub 合并区域()

Dim arr As Variant

arr = Cells(1, 1).Resize(1, 3).Value

MsgBox Join(arr, ",")

End Sub

13.2.7F i l t e r:数组的筛选

Filter函数用于返回一个下标从零开始的数组,该数组包含基于指定筛选条件的一个字符串数组的子集。其语法如下:

Filter(sourcesrray, match[, include[, compare]])

各参数含义如下:

表13-2 Filter函数的参数详解

参数含义

sourcearray 必需的。要执行搜索的一维字符串数组

match 必需的。要搜索的字符串

include 可选的。Boolean值,表示返回子串包含还是不包含match字符串。如果是True,返回包含match子字符串的数组子集。否则返回不包含match子字符串的数组子集

compare 可选的。数字值,表示所使用的字符串比较类型

例如从一串地址中找出所有属于广东的地名,代码如下:

Sub 找出广东的地名()

Dim arr1

arr1 = Array("广东广州", "四川成都", "广东东莞", "湖南长沙", "广东中山", "湖背武汉")

MsgBox Join(Filter(arr1, "广东", True, 1))

End Sub

以上过程中的数组arr1包括六个地名,Filter函数可以将该数组中包含“广东”的名需筛选出来,然后组成一个数组。而Join函数将数组转换成了字符串,其结果为“广东广州广东东莞广东中山”。

Filter函数的第二参数为字符串,如果需要使用数组做参数,即在两个数组间筛选,那么需要使用循环。例如以下过程,计算两个数组间的不同项与相同项:

Sub 两个数组中相同项与不同项()

Dim arr1, Arr2, arr3, i As Integer, str

'Arr2有而Arr1没有的项目

arr1 = Array("张松", "陈英杰", "刘明")

Arr2 = Array("古云华", "张松", "张忠英", "黄华丽", "周大明", "刘明新", "朱华", "陈明真")

'遍历数组Arr1三个姓名

For i = 0 To UBound(arr1)

'对Arr2重新赋值,该值为去掉重复项之后的数组

Arr2 = Filter(Arr2, arr1(i), False, 1)

Next i

'最后结果是从Arr2中去除与Arr1中所有相同的项目

MsgBox "Arr2有Arr1没有项目:" & Join(Arr2)

'arr1和arr2共有的项目

arr1 = Array("张松", "陈英杰", "刘明")

Arr2 = Array("古云华", "张松", "张忠英", "黄华丽", "周大明", "刘明新", "朱华", "陈明真")

For i = 0 To UBound(arr1)

'如果两者筛选后产生的数组上界大于等于0,那么表示存在相同项,则将它与变量str串连

If UBound(Filter(Arr2, arr1(i), True, 1)) >= 0 Then str = str & arr1(i) & ","

Next i

MsgBox "共有项:" & Left$(str, Len(str) - 1)

End Sub

以上过程中,前一段将Filter函数的第二参数设置False表示将Arr2中不包含Arr1的每一个元素组成一个数组,该数组中每个元素就是Arr2有而Arr1没有的项目。第二段则借用一个中间变量来记录两个数组共有的项目,将其与逗号串连成一个字符串。

Filter函数在比较两个值是否相同时,采用的近似匹配,所以“广东广州”才后等于“广东”。本例文件参见光盘:..\ 第十三章\两个数组中相同项与不同项.xlsm

第十四章开发数组函数与数组应用

善用数组可以对程序大大地提速。

本章就数组的应用进行案例讲解,包括开发数组方面的函数和数据查询等应用。通过本章地学习,读者完全可以借用数组对本书前12章的程序进行改造,提升其执行速度。

本章要点:

l自定义数组函数

l数组应用案例

14.1 自定义数组函数

在第6章中关于开发自定义函数的讲解时曾有一个数组函数,而本节对数组函数再进行深入地研究。

14.1.1定义数组函数要点

开发自定义的数组函数和非数组函数相比较,更复杂一些。它值遵循一些规则。

首先,在声明函数时一定要声明为变体型V ariant,或者不指定数据类型。

其次,按照用户的通常习惯,工作中使用一维纵向数组更多,而Array函数只能产生一维横向数组,将Array产生的数组赋与函数时需要进行转置。

最后,必须要函数的说明中明确指定这是数组函数,否则用户在使用中可能频频出错。14.1.2获取工作表目录

〖案例要求〗:获取所有工作表名

〖过程代码〗:

Rem 获取所有工作表名,组成一个数组

Function Sheets() As Variant

Application.Volatile

'声明变量,包括一个变体型Arr变量,将用它来获取所有工作表名,再将其赋与函数Sheets

'Sheets和Arr都只能声明为变体型

Dim sht As Worksheet, arr As Variant, Item As Integer

'重置数组的大小和维数。其上界等于工作表数量

'因函数名是Sheets,避免产生冲突,必须添加前缀ActiveWorkbook

ReDim arr(1 To ActiveWorkbook.Sheets.Count)

'遍历所有工作表

For Each sht In ActiveWorkbook.Sheets

Item = Item + 1

'将工作表名赋与变量数组

arr(Item) = https://www.wendangku.net/doc/7a15649331.html,

Next sht

'将数组赋与函数

Sheets = WorksheetFunction.Transpose(arr)

End Function

1.声明函数时必须使用变体型;

2.因Sheets是VBA内置对象名称,在引用工作表对象集合时需要添加对象库;

3.数组Arr默认是一维横向数组,赋与函数时转置与否都可以。因为工作表中也可以转置。

4.为了让工作表新增、删除时公式的结果自动更新,必须使用“V olatile”。

〖功能测试〗:

返回工作表中选择B2:B4并输入以下公式:

=sheets()

注意是数组公式,必须以【Ctrl+Shift+Enter】三键结束。如果需要获取其中部分工表名,可以借用Index函数来实现。例如:

=INDEX(sheets(),ROW(A1))

图14.1 Sheets函数获取工作表

本例文件参见光盘:..\ 第十四章\自定义数组函数.xlsm

14.1.3星期序列

〖案例要求〗:获取所有星期序列,包括英文和中文两种样式。

〖过程代码〗:

Rem 产生星期序列,有一个可选参数

Function Week(Optional Opt As Byte = 1)

Select Case Opt

'当参数为1或者忽略时产生中文序列

Case 1

Week = WorksheetFunction.Transpose(Array("星期一", "星期二", "星期三", "星期四", "星期五", "

星期六", "星期日"))

'当参数是2时产生英文序列

Case 2

Week = WorksheetFunction.Transpose(Array("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"))

Case Else

'否则为空白

Week = ""

End Select

End Function

〖注意事项〗:

1.当有多种选项时,尽量通过Optional设置一个默认选项,简化用户的公式输入工作;

2.Array产生的数组是一维横向数组,面要利用Transpose进行转置。如果不想用Transpose 那么可以换一种赋值方式:Week = [{"星期一"; "星期二";"星期三"; "星期四"; "星期五"; "星期六"; "星期日"}]。

在工作表中选择A1:A7区域,然后入以下公式:

=Week()——产生7个中文星期序列

=Week(2)——产生7个英文星期序列

本例文件参见光盘:..\ 第十四章\自定义数组函数.xlsm

14.1.4获取区域的唯一值

〖案例要求〗:将引用区域去除重复值,将唯一值利用数组方式罗列出来。

〖过程代码〗:

Function only(rng As Range)

Dim cell As Range, onlys As New Collection, Item As Long, arr

On Error Resume Next

'如果引用区域不在已用区域中则函数返回空文本

If Intersect(rng, https://www.wendangku.net/doc/7a15649331.html,edRange) Is Nothing Then only = "": Exit Function

'将区域限制在已用区域中,防止用户选择整列或者全选工作表时造成死机

For Each cell In Intersect(rng, https://www.wendangku.net/doc/7a15649331.html,edRange)

If cell <> "" Then onlys.Add cell.Value, CStr(cell.Text)

Next

'重置数组大小,其上界等于为重复数的个数

ReDim arr(1 To onlys.Count)

For Item = 1 To onlys.Count

'将不重复值逐个加入数组arr

arr(Item) = onlys(Item)

Next

'将数组转置后赋与only

only = WorksheetFunction.Transpose(arr)

End Function

〖注意事项〗:

1. 获取唯一值有很多方法,Countif或者字典法,或者Collection对象法,经过笔者的多次测试,利用Collection对象获取唯一值速度最快。它的一个特点是对象集合中所有对象不能存在重值,那么将区域中所有元素加入到该对象集合中后再逐个取出来,就可以过滤掉所有重复值。

2.如果要对参数所代表的区域进行循环时,通常都需要限制为该区域与工作表已用区域的交集,从而避免用户以整列、或者以“1:65536”做为参数时造成计算机进行假死状态。而获取已用区域时需要的一个技巧是:用“https://www.wendangku.net/doc/7a15649331.html,edRange)”获取目标工作表的已用区域。因为用户可能会引用其它工作表的区域做为参数的函数。

〖功能测试〗:

假设A1:A10有图14.2所示的数据,选择B1:B10可以获取该区域中唯一值:

=only(A1:A10)

因唯一值仅四个,那么在超过4个单元格以上的区域输入公式后,在第五个单元格开始的区域会产生错误值,解决这个问题有两个办法。一是用ROWS函数判断数组only的元素个数,将超出部分赋值为空。公式如下:

=IF(ROW(1:10)>ROWS(only(A1:A10)),"",only(A1:A10))——公式结果见图14.3所示。

第二个办法是按普通公式方式输入公式,以Index函数从数组中逐个取值:

=IFERROR(INDEX(only(A$1:A$10),ROW()),"")

图14.2 获取A1:A10唯一值 图14.3 消除错误值

本例文件参见光盘:..\ 第十四章\自定义数组函数.xlsm

14.2 数组应用案例

VBA 读写数组的速度远远快于读写单元格或者工作簿对象,所以操作单元格时往往可以转换为对数组的操作,从而对程序提速。本节就查找方面的应用进行6个案例演潮头,加深读者对数组的理解。

14.2.1 将按姓名排列的纵向学员表转置为按班级横向排列

〖案例要求〗:将图14.4中按姓名纵向排列的学员表转换换横向排列,以三个班级为分类标准从D 列开始罗列出来。

〖过程代码〗:

Sub 区域转置()

Dim arr1 As Variant, i As Long, MaxRow As Long, a, b, c Dim arr() As Variant '记录最后一个非空行

MaxRow = Cells(Rows.Count, 1).End(xlUp).Row '将区域赋与数组

arr1 = Range("A2:B" & MaxRow) '将三个班级赋与新数组 arr = [D1:D3].Value

'重置数组大小(保留原来的值):三行 MaxRow 列 ReDim Preserve arr(1 To 3, 1 To MaxRow) For i = 1 To MaxRow - 1 '将找到的数据

Select Case arr1(i, 2)

'根据班级将姓名加入到数组相应的行中 Case arr(1, 1)

a = a + 1: arr(1, a + 1) = arr1(i, 1) Case arr(2, 1)

b = b + 1: arr(2, b + 1) = arr1(i, 1) Case arr(3, 1)

c = c + 1: arr(3, c + 1) = arr1(i, 1)

End Select

Next i

'将数组赋与区域,多行的学员表已转置为多列

Cells(1, 4).Resize(3, MaxRow) = arr

End Sub

〖注意事项〗:

1.A、B列和D1:D3两个区域都有必要转化成数组,然后从数组中读写,从而提升效率;

2.MaxRow的作用是让程序自动计算非空单元格最大行,当数据增减时可以体现兼容性;

3. ReDim Preserve语句重置数组时可以保留其值,本例中不能使用ReDim。

〖功能测试〗:

返回工作表,执行过程“区域转置”,可以将AB列的学员表转置并存Cells(1, 4).Resize(3, MaxRow)区域。

图14.4 按姓名排列的学员表

本例文件参见光盘:..\ 第十四章\转置区域.xlsm

14.2.2多表学员资料查询

〖案例要求〗:在多工作表中查询学员资料,包括成绩、姓名、地址、工作表及学号。

图14.5 三个班级的成绩表

〖过程代码〗:

Sub 成绩搜索()

Dim Tim, arr(), intRows As Long, 姓名As String, firstAddress As String, cell As Range

'关闭屏幕更新

Application.ScreenUpdating = False

'清除上次查询信息

Range("A:F").Clear

'设定查找目标

姓名= Application.InputBox("您想查找谁的成绩?可以输入一个或者多字", "查找目标", , , , , , 2)

Tim = Timer '初始化时间变量

'遍历工作表(当前存放结果的工作表即除外)

For i = 1 To Sheets.Count - 1

'在每个表A列中查找

Set cell = Sheets(i).Range("A:A").Find(what:=姓名, LookAt:=xlPart)

If Not cell Is Nothing Then

firstAddress = cell.Address(0, 0)

Do

intRows = intRows + 1 '累加计数器

'重定义数组大小

ReDim Preserve arr(1 To 6, 1 To intRows)

arr(1, intRows) = Sheets(i).Name '数组第一子项目赋值为查找到的数据所在工作表名

arr(2, intRows) = cell.Address(0, 0) '数组第二子项目赋值为查找到的数据的单元格地址

arr(3, intRows) = cell.Value '数组第三子项目赋值为查找到的姓名

arr(4, intRows) = cell.Offset(0, 1).Text '数组第四子项目赋值为查找到的班级

arr(5, intRows) = cell.Offset(0, 2).Text '数组第五子项目赋值为查找到的学号

arr(6, intRows) = cell.Offset(0, 3).Text '数组第六子项目赋值为查找到的成绩

Set cell = Sheets(i).Range("A:A").FindNext(cell)

Loop While Not cell Is Nothing And cell.Address(0, 0) <> firstAddress

End If

Next

'如果找到有目标

If intRows > 0 Then

'将找到的值赋与单元格区域,然后添加边框与标题

Range("A2:F" & intRows) = Application.Transpose(arr)

[A1:F1] = Array("工作表", "地址", "姓名", "班级", "学号", "成绩")

Range("A1:F" & intRows).Borders.LineStyle = xlContinuous

End If

Application.ScreenUpdating = True

MsgBox Format(Timer - Tim, "0.00") & "秒" '提示总运行时间

End Sub

〖注意事项〗:

1.因学员资料存在多工作表中,所以需要利用循环查找所有存放学员资料的工作表;

2. Find的参数“LookAt:=xlPart”表示模糊查找,输入“张”可以找到所有姓“张”者的资料;

3.查找数据时必须针对未查找数组时的状况进行处理,在本例中借用“intRows > 0”来判断中是否有查找到目标。

〖功能测试〗:

返回工作工作表中后,执行过程“成绩搜索”将弹出一个对话框让用户输入待查询对象的姓名,假设输入“张”,那么查询结果见图14.6所示:

图14.6 多表资料查询

本例文件参见光盘:..\ 第十四章\学员资料查询.xlsm

14.2.3自定义百家姓序列

〖案例要求〗:生成百家姓序列,使工作表中输入姓氏时可以填充式输入。

〖过程代码〗:

Sub 序列() '生成百家姓序列

Application.ScreenUpdating = False

On Error Resume Next

Cells(Columns.Count, 1).EntireColumn.Clear '清除最后一列

Dim Item As Integer, arr(1 To 477)

'将百家姓写入常量中,总共477个百家性

Const 单姓As String = "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅皮卞齐康伍余元卜顾孟平黄和穆" & _

"萧尹姚邵湛汪祁毛禹狄米贝明臧计伏成戴谈宋茅庞熊纪舒屈项祝董梁杜阮蓝闵席季麻强贾路娄危江童颜郭梅盛林刁钟徐邱骆高夏蔡田樊胡凌霍虞万支柯昝管卢莫柯房裘缪干解应宗丁宣贲邓郁单杭洪包诸左石崔吉钮龚程嵇邢滑裴陆荣" & _

"翁荀羊于惠甄曲家封芮羿储靳汲邴糜松井段富巫乌焦巴弓牧隗山谷车侯宓蓬全郗班仰秋仲伊宫宁仇栾暴甘钭历戎祖武符刘景詹束龙叶幸司韶郜黎蓟溥印宿白怀蒲邰从鄂索咸籍赖卓蔺屠蒙池乔阳郁胥能苍双闻莘党翟谭贡劳逄姬申扶堵" & _

"冉宰郦雍却璩桑桂濮牛寿通边扈燕冀浦尚农温别庄晏柴瞿阎充慕连茹习宦艾鱼容向古易慎戈廖庾终暨居衡步都耿满弘匡国文寇广禄阙东欧殳沃利蔚越夔隆师巩厍聂晁勾敖融冷訾辛阚那简饶空曾毋沙乜养鞠须丰巢关蒯相查后荆红游竺" & _

"权逮盍益桓公"

Const 复姓As String = "万俟司马上官欧阳夏侯诸葛闻人东方赫连皇甫尉迟公羊澹台公冶宗政濮阳淳于单于太叔申屠公孙仲孙轩辕令狐徐离宇文长孙慕容司徒司空亓官司寇仉督子车颛孙端木巫马公西漆雕乐正壤驷公良拓拔夹谷宰父谷梁晋楚闫法汝鄢涂钦" & _

"段干百里东郭南门呼延归海羊舌微生岳帅缑亢况后有琴梁丘左丘东门西门商牟佘佴伯赏南宫"

For i = 1 To 407 '遍历407个单字百家姓

arr(i) = Mid(单姓, i, 1) '将百家姓加入数组中

Next

For i = 1 To 140 Step 2 '遍历120个复姓

arr(407 + (i + 1) / 2) = Mid(复姓, i, 2) '将复姓追加入数组中

Next i

'将数组导入自定义序列

Application.AddCustomList WorksheetFunction.Transpose(arr)

End Sub

〖注意事项〗:

1.百家姓可以去百度等搜索引擎查找,然后将它转换成字符串做代码调用;

2.因每行代码有长度限制,所以对常量赋值时必须将它截断成多行;

3.单姓与复姓的截取时标准不同,所以需要两个变量,MID的第三参数也不同;

4.将百宝姓逐个写入单元格中,然后将区域一次性导入序列也是可行的,然而相对于数组在效率上略差。

〖功能测试〗:

光标位于过程中任意位置,并按下快捷键F5执行过程,然后返回工作表中,在A1输入赵,当A1向下填充时,可以产生百家姓序列,总共477个。见图14.7所示:

图14.7 填充百家姓

本例文件参见光盘:..\ 第十四章\生成百家姓序列.xlsm

14.2.4 查询两列共有项

〖案例要求〗:将AB列中相同的数据提取出来。

〖过程代码〗:

Sub 共有项()

'声明变量,包括三个数组变量,其中从区域转换成数组的变量虽然只有单列,但却不能通过一维纵向数组的方式访问

Dim arr1() As Variant, arr2() As Variant, arr3() As Variant, Item1 As Integer, Item2 As Integer, SameCount, Counter As Byte

'将区域转换成数组

arr1 = Range([A2], Cells(Rows.Count, 1).End(xlUp)).Value

arr2 = Range([B2], Cells(Rows.Count, 2).End(xlUp)).Value

'计算两列中相同数的个数,减少ReDim的次数。如果不计算相数同,那么可以在循环中多次使用ReDim Preserve来解决

SameCount = Application.Evaluate("=sumproduct(countif(" & Range([A2], Cells(Rows.Count,

1).End(xlUp)).Address & "," & Range([B2], Cells(Rows.Count, 2).End(xlUp)).Address & "))")

ReDim arr3(1 To SameCount)

'嵌套循环,比较A列的与B列有哪些相同,将相同的值加入数组Arr2

For Item1 = 1 To UBound(arr1)

For Item2 = 1 To UBound(arr2)

'如果相同加入第三个数组,注意第两个数组与第三个数组的参数个数不同

If arr1(Item1, 1) = arr2(Item2, 1) Then Counter = Counter + 1: arr3(Counter) = arr1(Item1, 1) Next Item2

Next Item1

MsgBox "两列中相同项为:" & Chr(10) & Join(arr3, ",")

End Sub

〖注意事项〗:

1.本例中声明了三个数组,Arr1和Arr2通过一列的区域转换成数组,那么在访问其元素时不能当成一维纵向数组处理,必须使用两个参数,例如Arr1(1,1),而且其默认下界是1不是0。

2. 为了减少数组变量的重置次数,本例中使用了Evaluate方法计算两列是相同值的个数,做为数组的上界。当数组上界很大时,此方法会具有速度上的优势。

〖功能测试〗:

光标位于过程中任意位置,并按下快捷键F5执行过程,两列同相同项为图14.9所示:

图14.8 参赛人员列表图14.9 相同项列表

本例文件参见光盘:..\ 第十四章\获取相同项目.xlsm

14.2.5 获取文件夹下所有文件详细信息

〖案例要求〗:将指定文件夹中所有文件的文件名、创建时间、上次访问时间、上次修改时间、文件大小、文件类、路径等信息罗列在工作表中。

〖过程代码〗:

Sub 批量获取文件信息() '遍历指定路径两级文件夹内文件信息,如果需要更多级可根据需要修改Dim fd As FileDialog, Fso, Fold, File, Folds, Filess, arr(), Item As Long

'让用户选择路径

Set fd = Application.FileDialog(msoFileDialogFolderPicker)

'如果选择了文件夹则记录路径

If fd.Show = -1 Then

PathStr = fd.SelectedItems(1)

Else

Exit Sub

End If

'设置标题

[a1].Resize(1, 7) = Array("文件名", "创建时间", "上次访问时间", "上次修改时间", "文件大小(b)", "文件类型", "路径")

'利用FSO技术获取文件与文件夹相关信息

Set Fso = CreateObject("scripting.filesystemobject")

Set Fold = Fso.getfolder(PathStr)

Set Filess = Fold.Files

Set Folds = Fold.subfolders

'将每个文件的名称、创建时间、上次访问时间、修改时间、大小、类型、路径等信息加入数组

For Each File In Filess

Item = Item + 1

ReDim Preserve arr(1 To 7, 1 To Item)

arr(1, Item) = https://www.wendangku.net/doc/7a15649331.html,

arr(2, Item) = File.DateCreated

arr(3, Item) = File.DateLastAccessed

arr(4, Item) = File.DateLastModified

arr(5, Item) = File.Size

arr(6, Item) = File.Type

arr(7, Item) = File.Path

Next

'将数组导出到单元格并对单元格自动调剌列宽

[a2].Resize(Item, 7) = WorksheetFunction.Transpose(arr)

Range("A:H").Columns.AutoFit

End Sub

〖注意事项〗:

1.获取文件的信息有多种方式,本例中采用了FSO技术,在本书第19章将对FSO进行详述;

2. ReDim Preserve语句只能改变数组的末维大小,所以重置大小时必须是横向延伸的数组,而在最后将它转置后再导出到工作表中。

〖功能测试〗:

光标位于过程中任意位置,并按下快捷键F5执行过程,在弹出的对话框中选择文件夹,那么该文件夹中的每一个文件的相关信息都会在工作表中罗列出来。

本例文件参见光盘:..\ 第十四章\批量获取文件信息.xlsm

14.2.7 获取当前表所有批注

〖案例要求〗:图14.10是成绩表,成绩为空或者不及格者有批注。现要求将所有批注及姓名单独提取出现放在新工作表中,便于查看及打印。

〖过程代码〗:

Sub 获取批注()

Dim Nam As Comment, arr(), Item As Long

'遍历所有批注

For Each Nam In https://www.wendangku.net/doc/7a15649331.html,ments

Item = Item + 1

'重新分配数组大小

ReDim Preserve arr(1 To 2, 1 To Item)

'将姓名与批注导入到数组中

arr(1, Item) = "姓名:" & Nam.Parent.Offset(0, -1)

arr(2, Item) = "批注:" & Nam.Text

Next

'将数组转置后赋与单元格

With Sheets.Add

.Name = "获取批注"

.Cells(1, 1).Resize(Item, 2) = WorksheetFunction.Transpose(arr)

End With

End Sub

〖注意事项〗:

1.可以利用遍历B列每个单元格的方式,将有批注的单元格对应的姓与与批注提取出来,但循环批注较循环单元格更快;

2.本例也可以先计算批注的数量,然后只需要使用ReDim Preserve一次,直接设定其上界,然后循环体中可以不再使用ReDim Preserve语句。读者可以延着这个思路去练习一次。

〖功能测试〗:

光标位于过程中任意位置,并按下快捷键F5执行过程,提取出来的数据如图14.11所示:

图14.9 成绩表图14.10 将所有批注提取出来置于新表中

第十五章认识窗体与控件

窗体与控件可以实现与表格的交互,也可以设计精美的界面。善用控件可以使自己的程序更具个性,以及增强Excel的功能。

本章要点:

l UserForm简介

l窗体控件一览

l设置控件属性

l窗体与控件的事件

15.1UserForm简介

UserForm即用户窗体,通过它可以操作工作簿、工作表、单元格、批注、图形对象等等,也可以仅仅利用窗体设计单独的程序,完全脱离单元格、工作表等数据载体。

15.1.1 窗体与控件的用途

VBA中的窗体与控件主要用于以下几方面的:

l设计登录窗口

l制作数据输入界面

l数据查询界面

l选项设置窗口

l制做程序帮助

本书将对以上各类用作做案例演示。

15.1.2 插入窗体与控件的方法

插入窗体的方法是:在VBE界面中单击菜单【插入】\【用户窗体】,那么当前工程中将出面一个“UserForm1”。

但是插入用户窗体需要注意三点:

首先,需要确保当前有打开的工作簿。如果不存在活动工作簿那么无法插入用户窗体

其次,是当前工程如果受保护,那么必须解除保护才可以插入新的窗体;

当打开多个工作簿时,插入的窗体附属于当前选中的工程,它与活动工作簿无关。

而插入控件则是在已插入窗体的基础上进行,只有已存在窗体的情况下才可以插入控件。

假设当前已存在窗体“UserForm1”,那么双击工程资源管理器中的窗体名“UserForm1”,进入窗体编辑状态,然后单击菜单【视图】\【窗体】可以显示工具箱,在工具箱中有默认的15种控件,用户可以通过单击并在窗体中拖动的方式来插入控件。图15.1是窗体与工具箱:

图15.1 窗体与包含默认控件的工具箱

假设需要在窗体中插入一个文字框控件,那么可以单击工具箱中的“文字框控件”(图标为),然后在窗体中拖动产生一个文字框控件。然后可以用左键按住边框拖动的方式改变其大小。

15.1.3 使用E x c e l5.0对话框

除了VBE中插入窗体外,在表中也可以使用窗体与控件。具体步骤为:

(1)在工作表标签上单击右键,从菜单中选择【插入】;

(2)在弹出的对话框中选择“MS Excel 5.0对话框”,从而插入一个宏表对话框;

(3)在表中默认已经产生一个窗体和两个按钮,可以通过开发工具中的表单控件来丰富窗体的内容。例如图15.2中左边是设置时的界面,右边是运行对话框时的界面。

图15.2 Excel 5.0对话框

5.0对话话框的执行方式有两种:在对话框中的空白区单击右键,从中选择【执行对话框】,另一种方法是利用VBA的Show方法显示窗体,例如对话框的名字是“窗体”,那么代码如下:Sub 执行对话框()

DialogSheets("窗体").Show

End Sub

本例文件参见光盘:..\ 第十五章\执行对话框.xlsm

15.2 窗体控件一览

控件位于工具箱中,可以将它加添加到窗体中强化窗体的功能。默认的控件有九个,用户可以对工具箱添加自定义控件。

15.2.1 标签

标签的英文名称是Label,用代码引用该控件时也使用Lable。它在工具箱中的图标为。

在窗体中添加标签时,默认名称和默认Caption都是“Lable1”,添加第二个时默认名和默认Caption都是“Lable2”,可以在代码中以该名称来引用控件。

标签用于在窗体中添加说明性的文本,且该文本在窗体执行阶段是不可修改的,通常由开发者指定标签内容,在物殊情况下也可以根据运行的条件自动选择显示的文本内容。

15.2.2 文字框

在窗体中添加文字框时,默认名称和默认Caption都是“TextBox1”,添加第二个时默认名和默认Caption都是“TextBox2”,用户可以随时修改其名称和Caption属性。

文字框的用途是运行窗体时让用户输入文字或者数值。

15.2.3 命令按钮

命令按钮的英文名称是CommandButton,它在工具箱中的图标为。

命令按钮的用途是用户单击时可以执行一个或者多个任务。它的显示字符Caption在窗体执

行阶断不可以修改。

15.2.4 复合框

复合框(也称组合框)的英文名称是ComboBox,它在工具箱中的图标为。

复合框可以画出列表框与文本框的组合。用户可以从列表中选出一个项目或是在一个文框中输入值。

15.2.5 列表框

列表框的英文名称是ListBox,它在工具箱中的图标为。

列表框用来显示用户可以选择的项目列表。如果不能一次显示全部项目的话,可以滚动其滚动条来显示其它项目,也可以通过代码让列框改变高度来适应列表项目的数量。

15.2.6 复选框

复选框的英文名称是CheckBox,它在工具箱中的图标为。

复选框用于创建一个方框,让用户容易地选择以指示出某些事物是真或假。

15.2.7 单选框

单选框的英文名称是OptionButton,它在工具箱中的图标为。

单选框用于显示多重选择,但用户只能从中选择一个项目。

15.2.8 分组框

分组框(也称框架)的英文名称是Frame,它在工具箱中的图标为。

分组框用于创建一个图形或控件的功能组,将窗体中的其它控件分组,特别是有单选框时,分组框有助于用于创建多个单选项。

15.2.9 切换按钮

切换按钮的英文名称是ToggleButton,它在工具箱中的图标为。

切换按钮用于创建一个切换开关的按钮,可以在按下和突起时分别执行不同过程。

15.2.10 多页控件

多页控件的英文名称是MultiPage,它在工具箱中的图标为。

多页控件类似于分组框,可以将内有某种联系的控件单独做为一组显示。区别是多个分组框可以同时显示,而多页控件一次只能显示一页。它的功能与TabStrip控件相近。

15.2.11 滚动条

滚动条的英文名称是ScrollBar,它在工具箱中的图标为。

滚动条提供在长列表项目或大量信息中快速浏览的图形工具,以比例方式指示出当前位置,或是做为一个输入设备,成为速度或者数量的指示器。通常用它替代数字输入。它的功能与旋转按钮相近。旋转按钮的图标为。

15.2.12 图像

图像的英文名称是Image,它在工具箱中的图标为。

图像控件用于在窗体上显示位图、图标,不能显示动画。通常用它做装饰,可以设置背景。

15.2.13 R e f E d i t

RefEdit也称单元格选择器,它在工具箱中的图标为。

RefEdit可选择用户选择单元格,并返回该单元格对象。它与Application.Inputnox最后一参数为8时功能相同。

15.2.14 附件控件

除默认控件外,用户还可以调用附加控件以强化窗体的功能。事实上很多有用的控件都没有在工具箱中罗列出来,需要用户手工调用。添加附件控件的步骤如下:

(1)在显显示窗体的前提下,单击菜单【视图】\【工具箱】;

(2)在工具箱右上角空白区单击右键,并选择【新建页】菜单;

(3)在空白区单击右键,选择【附加控件】,在“附件控件”对话框中将需要的控件打勾,然后单击“确定”按钮,工具箱的“新页”中将产生新加的控件。图15.3中即包括Flash动画控件、多媒体控件和网页控件三个附加控件。

图15.3 在新页中添加附件控件

吉他基础学习与各调音阶图详解

吉他基础教程 第1节入门知识 一、吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。 二、吉他的结构

吉他弦的记号 琴头朝上,面对吉他指板,从右 往左(从细到粗)数分别是1、2、3、 4、5、6弦。 吉他的“品” 琴头朝上,面对吉他指板,从上 往下数,每一格就是一品,一般的吉 他从琴枕到琴身为止有12品,民谣 吉他从琴枕到琴身为止一般有14品。 一般会在第5、7品上印有一个点, 在12品印有两个点,便于记忆。 三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。 3.将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4.将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5.右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。

吉他教程初学者入门基础知识

更多课程传送门:点这里 信之吉他基础教程 第1节入门知识 一、吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。 三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。

3. 将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4. 将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5. 右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6. 提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板上,掌心不要碰琴颈背部,但有时会根据需要而有所改变。 7. 民谣吉他持琴姿势也常常采用站立的姿势。无论是坐着还是站立持琴,都要以双手自然放松为基本的要求。 注意:持琴姿势还有许多种,同学们可以观察MTV 中的吉他手姿势进行模仿,但在初学阶段一般用坐姿,暂时不要用其他姿势。 四、 手指记号 1、右手指代号 p (pulgar 的简写)——拇指 i (indice 的简写)——食指 m (medio 的简写)——中指 a (anular 的简写)——无名指 ch (chico 的简写)——小指,不常用 2、左手指代号 1——食指 2——中指 3——无名指 4——小指 注意:在六线谱中用1、2、4、5、6表示,而在和弦图中则用①②③④⑤⑥表示。 五、 练习(1) 1. 把右手拇指放在第6弦上,轻轻靠住,暂时作为支撑点,食指(i )、中指(m )、无名指(a )分别放在第3、2、1弦上方(不要碰弦)。 2. 按照手指a 、m 、i 的顺序轻轻勾3、2、1弦,勾弦时注意用力均匀,向手心方向勾。 3. 这是弹吉他的第一步,请用心练习,要练到闭上眼睛都能弹得准。 4. 左手暂时不要练习,下一节将讲左手的练习和左右手的配合练习。 信之吉他基础教程 第2节 认识吉他六线谱、C 大调音阶 六、 吉他六线谱 六线谱是把吉他的六根弦对应地划出六条平行的横线来表示两手演奏的位置和动作(即指法),而不是记录的音的高低,但它与简谱或五线谱结合对照起来使用时非常方便,既能表 ———————————————————— 第1弦 ———————————————————— 第2弦 ———————————————————— 第3弦 ———————————————————— 第4弦 ———————————————————— 第5弦 ———————————————————— 第6弦 六线谱对吉他常用的演奏方式(独奏、分解伴奏和漫弹节奏)分别用如下方式记录: 独奏(旋律)记谱:在六条线上写上阿拉伯数字。六线谱中的数字表示吉他的品格,写 ————————————————0——— 第1弦 空弦 —————————————1—————— 第2弦 第1品

来个吉他谱以及教程下载汇编_史上绝对

请注意:在word里面,按ctrl键点击带蓝色有链接的字眼即可进入下载界面了。建议用工具下载。由于网盘不同,有的需要等一分钟才能点击下载,请在网速快的时候下载。 来自 下载只需要点击一下文字链接即可下载,有的下载需要一定的时间,等等“下载”字眼出现 在下载,全部免费哦。如果觉得可以要顶一个鼓励一下哦。看完下面的吉他教程,保证你吉他有突飞猛进的进展。 以下资料的地址:教学资料: 吉他谱: 序号文件下载外链图片外链 1不能说的秘密吉他谱.txt获取下载外链- 曾轶可_我还是个孩子_吉他 2 获取下载外链- 谱_(图).doc 3大约在冬季_吉他谱.doc获取下载外链- 4稻香吉他谱.txt获取下载外链- 5电吉他基础教程.doc获取下载外链- 6丁香花吉他谱.pdf获取下载外链- 7情非得已(吉他谱).docx获取下载外链- 8天空之城吉他独奏曲谱.pdf获取下载外链- 完整版卡尔卡西作品25首练 获取下载外链- 9 习曲.pdf 10我是愤怒_吉他谱.pdf获取下载外链- 许巍吉他谱全集(手机MP3上 11 获取下载外链- 用).txt 12致爱丽丝.pdf获取下载外链 吉他教程 钟立风_《他为我们编织音乐》专辑吉他谱.pdf

[世界著名乐队.原版吉他谱合集].怎样演奏古典吉他-赵长贵怎样演奏古典吉他-赵长贵 怎样演奏古典吉他-赵长贵 怎样演奏古典吉他-赵长贵 怎样演奏古典吉他-赵长贵 民谣吉他经典教程.pdf 乔伊吉他教室_主奏吉他速度技巧(中文).pdf 吉他初级班.pdf 怎样演奏古典吉他-赵长贵 世界著名乐队.原版吉他谱合集 许巍吉他谱集.pdf 吉他谱

吉他自学三月通

第一课:吉他结构与种类,吉他的选购与保养 从演奏风格来说,吉他可以分为古典吉他、民谣吉他、弗拉门哥吉他、爵士吉他、夏威夷吉他及电吉他几个大类。民谣吉他可细分为Acoustic guitar和Cutting down(缺角琴),前者适合演奏和弦,后者适合演奏高把位Solo。民谣吉他琴颈比较细,上指扳宽42mm,从弦枕到琴身共14个品格,琴箱上有一个月牙形的护板,使用钢丝弦演奏。 吉他的各部分: 高档琴的选用的木料都要置于通风阴凉处自然干燥数十年乃之上百年,价格昂贵。对于大多爱好者来说,也要选购1000元左右的标准民谣吉他。如何挑选一把高品质的吉他 1.音准是核心问题。按吉他的定音标准调校好各弦后弹出一弦第12品的泛音,如果它与该弦第12品的音高相同则为合格。如此依次检查六根弦。 2.其次检查手感。手感不良会使你被迫采取不当的按弦方法,从而极大地阻碍左手技术的提高。当吉他调到标准音高时,在第14品格处,弦与指板的距离应在4毫米左右。太高,按弦会感觉吃力,反之会造成打品的现象。好的手感应该是在不打品和出现任何杂音的情况下,左手手指可以轻松地按下任意一个音,大横按也不感到费力。 3.检查音质。弹奏每根弦第五品泛音,共鸣差的吉他往往发不出明亮的泛音。然后在琴上做各种力度的拨弦,音量应有大幅度的变化。同时,性能较好的吉他各弦音量平衡,发音灵敏,高音明亮纯净,低音深沉厚实,高把位的音量也不会衰减。 4.其他部位的检查。看看弦轴的齿轮是否损坏,旋转是否顺畅,面板,背侧板是否有开裂现象,油漆是否光亮,琴的色泽是否协调。最重要的是品丝一定要光滑,指板边不能划手。 一把好吉他的保养也很重要,此谓之"工欲善其事,必先利其器"。建议大家: 1.中,低档吉他要买个琴套,高档的吉他要买个琴盒,这样便于吉他的存放。 2.温度,湿度的突然变化会对吉他造成伤害。平时要避免吉他在阳光下直照,不要让吉他靠近暖气。如果空气过分潮湿可在琴盒内放一些干燥剂。 3.高档吉他都是经过相当考究的工艺及材料精细加工而成的,因此特别容易受伤。切忌将吉

吉他自学三月通

第一课:吉他结构与种类,吉他的选购与调养 令狐采学 从演奏气概来说,吉他可以分为古典吉他、民谣吉他、弗拉门哥吉他、爵士吉他、夏威夷吉他及电吉他几个年夜类。民谣吉他可细分为Acoustic guitar和Cutting down(缺角琴),前者适合演奏和弦,后者适合演奏高把位Solo。民谣吉他琴颈比较细,上指扳宽42mm,从弦枕到琴身共14个品格,琴箱上有一个月牙形的护板,使用钢丝弦演奏。 吉他的各部分: 高档琴的选用的木料都要置于通风阴凉处自然干燥数十年乃之上百年,价格昂贵。对年夜多快乐喜爱者来说,也要选购1000元左右的标准民谣吉他。如何挑选一把高品质的吉他

1.音准是核心问题。按吉他的定音标准调校好各弦后弹出一弦第12品的泛音,如果它与该弦第12品的音高相同则为合格。如此依次检查六根弦。 2.其次检查手感。手感不良会使你自愿采纳不当的按弦办法,从而极年夜地阻碍左手技术的提高。当吉他调到标准音高时,在第14品格处,弦与指板的距离应在4毫米左右。太高,按弦会感觉吃力,反之会造成打品的现象。好的手感应该是在不打品和呈现任何杂音的情况下,左手手指可以轻松地按下任意一个音,年夜横按也不感到吃力。 3.检查音质。弹奏每根弦第五品泛音,共鸣差的吉他往往发不出明亮的泛音。然后在琴上做各种力度的拨弦,音量应有年夜幅度的变更。同时,性能较好的吉他各弦音量平衡,发音灵敏,高音明亮纯洁,高音深沉厚实,高把位的音量也不会衰减。 4.其他部位的检查。看看弦轴的齿轮是否损坏,旋转是否顺畅,面板,背侧板是否有开裂现象,油漆是否光亮,琴的色泽是否协调。最重要的是品丝一定要光滑,指板边不克不及划手。 一把好吉他的调养也很重要,此谓之"工欲善其事,必先利其器"。建议年夜家: 1.中,高档吉他要买个琴套,高档的吉他要买个琴盒,这样便于吉他的寄存。 2.温度,湿度的突然变更会对吉他造成伤害。平时要避免吉他在阳

吉他教程入门知识【初学者必看】_图文

吉他基础教程入门知识 本文档分为两部分,前部分为吉他的入门知识,专为吉他初学者而写,如果你想真心学好吉他,请务必认真看完;第二部分为初学者吉他挑选经验,希望对你有所帮助! 第一部分入门知识 一、吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。

三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。 3.将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4.将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5.右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6.提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板上,掌心不要碰琴颈背部,但有时会根据需要而有所改变。 7.民谣吉他持琴姿势也常常采用站立的姿势。无论是坐着还是站立持琴,都要以双手自然放松为基本的要求。 注意:持琴姿势还有许多种,同学们可以观察MTV中的吉他手姿势进行模仿,但在初学阶段一般用坐姿,暂时不要用其他姿势。 四、手指记号 1、右手指代号 p(pulgar的简写)——拇指i(indice的简写)——食指 m(medio的简写)——中指a(anular的简写)——无名指 ch(chico的简写)——小指,不常用 2、左手指代号 1——食指2——中指3——无名指4——小指 注意:在六线谱中用1、2、4、5、6表示,而在和弦图中则用①②③④⑤⑥表示。 五、练习(1) 1.把右手拇指放在第6弦上,轻轻靠住,暂时作为支撑点,食指(i)、中指(m)、无名指(a)分别放在第3、2、1弦上方(不要碰弦)。 2.按照手指a、m、i的顺序轻轻勾3、2、1弦,勾弦时注意用力均匀,向手心方向勾。 3.这是弹吉他的第一步,请用心练习,要练到闭上眼睛都能弹得准。 4.左手暂时不要练习,下一节将讲左手的练习和左右手的配合练习。 认识吉他六线谱、C大调音阶 六、吉他六线谱 六线谱是把吉他的六根弦对应地划出六条平行的横线来表示两手演奏的位置和动作(即指法),而不是记录的音的高低,但它与简谱或五线谱结合对照起来使用时非常方便,既能表 ————————————————————第1弦 ————————————————————第2弦 ————————————————————第3弦 ————————————————————第4弦 ————————————————————第5弦 ————————————————————第6弦

学吉他从入门基础开始经典学习手册

信之吉他基础教程 第1节入门知识 一、吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。 吉他弦的记号 琴头朝上,面对吉他指板,从右 往左(从细到粗)数分别是1、2、3、 4、5、6弦。 吉他的“品” 琴头朝上,面对吉他指板,从上 往下数,每一格就是一品,一般的吉 他从琴枕到琴身为止有12品,民谣吉 他从琴枕到琴身为止一般有14品。一 般会在第5、7品上印有一个点,在 12品印有两个点,便于记忆。 三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。 3.将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4.将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5.右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6.提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板

2012吉他基础教程

第1节入门知识 一、吉他的分类 二、吉他的结构 三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。

3. 将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4. 将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5. 右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6. 提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板上,掌心不要碰琴颈背部,但有时会根据需要而有所改变。 7. 民谣吉他持琴姿势也常常采用站立的姿势。无论是坐着还是站立持琴,都要以双手自然放松为基本的要求。 注意:持琴姿势还有许多种,同学们可以观察MTV 中的吉他手姿势进行模仿,但在初学阶段一般用坐姿,暂时不要用其他姿势。 四、 手指记号 1、右手指代号 p (pulgar 的简写)——拇指 i (indice 的简写)——食指 m (medio 的简写)——中指 a (anular 的简写)——无名指 ch (chico 的简写)——小指,不常用 2、左手指代号 1——食指 2——中指 3——无名指 4——小指 注意:在六线谱中用1、2、4、5、6表示,而在和弦图中则用①②③④⑤⑥表示。 五、 练习(1) 1. 把右手拇指放在第6弦上,轻轻靠住,暂时作为支撑点,食指(i )、中指(m )、无名指(a )分别放在第3、2、1弦上方(不要碰弦)。 2. 按照手指a 、m 、i 的顺序轻轻勾3、2、1弦,勾弦时注意用力均匀,向手心方向勾。 3. 这是弹吉他的第一步,请用心练习,要练到闭上眼睛都能弹得准。 4. 左手暂时不要练习,下一节将讲左手的练习和左右手的配合练习。 信之吉他基础教程 第2节 认识吉他六线谱、C 大调音阶 六、 吉他六线谱 六线谱是把吉他的六根弦对应地划出六条平行的横线来表示两手演奏的位置和动作(即指法),而不是记录的音的高低,但它与简谱或五线谱结合对照起来使用时非常方便,既能表 第1弦 第2弦 第3弦 第4弦 第5弦 第6弦 六线谱对吉他常用的演奏方式(独奏、分解伴奏和漫弹节奏)分别用如下方式记录: 独奏(旋律)记谱:在六条线上写上阿拉伯数字。六线谱中的数字表示吉他的品格,写在线上的数字表示左手按第几品,数字所在的线即右手应弹的弦。 第1弦 空弦 第2弦 第1品

100来个吉他谱以及教程下载汇编_史上绝对最全

100来个吉他谱以及教程下载汇编_史上绝对最全请注意:在word里面,按ctrl键点击带蓝色有链接的字眼即可进入下载界面了。建议用工具下载。由于网盘不同,有的需要等一分钟才能点击下载,请在网速快的时候下载。来自 下载只需要点击一下文字链接即可下载,有的下载需要一定的时间,等等“下载”字眼出现在 下载,全部免费哦。如果觉得可以要顶一个鼓励一下哦。看完下面的吉他教程,保证你吉他有突飞猛进的进展。 以下资料的地址: 教学资料: 吉他谱: 序号文件下载外链图片外链 1 - 不能说的秘密吉他谱.txt 曾轶可_我还是个孩子_吉他2 - 获取下载外链谱_(图).doc 3 - 大约在冬季_吉他谱.doc 获取下载外链 4 - 稻香吉他谱.txt 5 - 电吉他基础教程.doc 6 - 丁香花吉他谱.pdf 7 - 情非得已(吉他谱).docx 8 - 天空之城吉他独奏曲谱.pdf 获取下载外链 完整版卡尔卡西作品25首练9 - 获取下载外链习曲.pdf 10 - 我是愤怒_吉他谱.pdf 许巍吉他谱全集(手机MP3上11 - 获取下载外链用).txt 12 致爱丽丝.pdf 吉他教程

钟立风_《他为我们编织音乐》专辑吉他谱.pdf 怎样演奏古典吉他-赵长贵4.pdf 怎样演奏古典吉他-赵长贵2.pdf 怎样演奏古典吉他-赵长贵3.pdf 怎样演奏古典吉他-赵长贵5.pdf 怎样演奏古典吉他-赵长贵1.pdf 民谣吉他经典教程.pdf 乔伊吉他教室_主奏吉他速度技巧(中文).pdf 吉他初级班.pdf 怎样演奏古典吉他-赵长贵5.pdf 世界著名乐队.原版吉他谱合集_.Mr.Big.-.Lean.Into.It.pdf 许巍吉他谱集.pdf 吉他谱New_Praise_Book_1_.pdf 世界著名乐队吉他谱Coldplay.-.Parachutes.pdf 许巍吉他谱全集(手机MP3上用).txt 电吉他基础教程.doc 学习吉他前必须记住的40个要点.doc 世界著名乐队.原版吉他谱合集.pdf 完整版卡尔卡西作品25首练习曲.pdf 吉他维修权威教程_A.pdf 吉他自学三月通5.pdf 吉他自学三月通4__刘传朱迎编写.pdf 吉他自学三月通3.pdf 吉他自学三月通2_刘传朱迎编写.pdf

一起学吉他吧(入门教程)

一起学吉他吧你的支持是我唯一坚持下去的动力 第一部分吉他挑选经验 一、了解吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。

三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。 3.将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4.将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5.右手拇指放在音孔区的5弦上,食指,中指,无名指放在第3、2、1弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6.提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板上,掌心不要碰琴颈背部,但有时会根据需要而有所改变。 7.民谣吉他持琴姿势也常常采用站立的姿势。无论是坐着还是站立持琴,都要以双手自然放松为基本的要求。 注意:持琴姿势还有许多种,同学们可以观察MTV中的吉他手姿势进行模仿,但在初学阶段一般用坐姿,暂时不要用其他姿势。 四、手指记号 1、右手指代号 p(pulgar的简写)——拇指i(indice的简写)——食指 m(medio的简写)——中指a(anular的简写)——无名指 ch(chico的简写)——小指,不常用 2、左手指代号 1——食指2——中指3——无名指4——小指 注意:在六线谱中用1、2、4、5、6表示,而在和弦图中则用①②③④⑤⑥表示。 五、练习(1) 1.把右手拇指放在第6弦上,轻轻靠住,暂时作为支撑点,食指(i)、中指(m)、无名指(a)分别放在第3、2、1弦上方(不要碰弦)。 2.按照手指a、m、i的顺序轻轻勾3、2、1弦,勾弦时注意用力均匀,向手心方向勾。 3.这是弹吉他的第一步,请用心练习,要练到闭上眼睛都能弹得准。 4.左手暂时不要练习,下一节将讲左手的练习和左右手的配合练习。 认识吉他六线谱、C大调音阶 六、吉他六线谱 六线谱是把吉他的六根弦对应地划出六条平行的横线来表示两手演奏的位置和动作(即指法),而不是记录的音的高低,但它与简谱或五线谱结合对照起来使用时非常方便,既能表 ————————————————————第1弦 ————————————————————第2弦 ————————————————————第3弦 ————————————————————第4弦 ————————————————————第5弦 ————————————————————第6弦

吉他自学三月通

《吉他自学三月通》学习指导 ——风华艺校韩永健 《吉他自学三月通》包含的知识很丰富、很全面,是一本名副其实的自学大全。可能有些自学的朋友开始学时会觉得无从下手。下面我帮大家拟定两套学习方案: A方案(以书为依托来学习): 以单纯的书本顺序来学。 第一步:(用时30——60分钟) 了解持琴姿势(P16)——认识六线谱的记谱方法(P36)——左右手的指法记号(P39),——认识和弦图(P41) 如果上面某些部分你会了,可以跳过去。但这四个内容是一定要全部掌握的。 第二步:(用时3——7天) 从C大调的和弦开始学起(P50),C、Dm、Em、F、G、Am这六个和弦是你一定要学会并熟悉的。C、Dm、Em、Am都很容易,按G和弦的时候你会觉得小指很别扭,按F和弦的时候你甚至觉得这怎么可能按好。没关系,通过不断练习,你的手指力量会慢慢增强的。 第三步:(用时2——3天) 做C大调的自然音阶练习(P204),记清楚前三品自然音阶的位置。接下来就是和弦练习了(P215),这些练习都是从简入繁的。 第四步:(用时3——5天)

熟悉了这些和弦的连接及各种节奏类型,就可以尝试弹C调指法的歌曲了。比如《第一次爱的人》(P344)。 任何的调试都用以上顺序由浅入深的方式迈进。 学完C调的和弦,可以先学G调的和弦,这两个调式指法相对简单,而且在流行音乐中很常用。其他的调式就可以陆续学习了。 在自学过程中会遇到一些问题,在第二篇《专题讲解与问题解答》(P172)中你应该可以找到你想要的答案。 第一篇里的“乐理知识详解”(P28)中,如果你对一些专有名词实在不明白,比如“国际标准音”、“乐音体系”这些,其实都无所谓,不懂这些一样能学好吉他。 B方案(以视频为依托来学习): 以所配的DVD视频顺序来学。 P215:C大调、A小调和弦练习 练习一,此练习是分解和弦的练习,是掌握和弦后的第一个练习。 练习二,此练习是分解和弦的练习,但高音部分使用了柱式(也就是几根弦一起弹响)。 练习三,此练习是在练习二的基础上加入了低音旋律线条和和弦过度音,这样会使和弦的连接更具旋律性。 P215: 练习四,此练习的b3音按起来比较别扭,是本条练习的难点。 练习五,此练习有两个特点,一是低音的旋律性,二就是用击弦使和弦丰富。

(完整版)吉他基础教程入门知识(可编辑修改word版)

信之吉他基础教程 第1 节入门知识 一、吉他的分类 1、古典吉他 出自宫廷乐器,据说是鲁特琴的衍生乐器。琴身系手工打造,指板平、宽。琴弦是尼龙弦,上弦方式特殊。音色唯美、圆润。 2、民谣吉他 来自古典吉他,变更为12~14 品的大共鸣箱吉他,微窄的指板和略有弧度的指板面使演奏更加轻松。琴弦都为钢、合金弦,较硬。音色清脆悦耳,穿透力强,音量大于古典琴,金属感厚重。 3、夏威夷吉他 现代电吉他的祖先,演奏时平放,以金属滑棒和金属拨片为工具。自带很小的共鸣箱,声音必须要有放大器扩大。 4、电吉他 是民谣吉他和夏威夷电吉他的改版升级,分有共鸣箱和单体琴两种。声音来自琴弦震动切割磁场产生的电流再放大形成,设备需要放大器。因音乐表现力的不同,被制作成各类不同的型号与样式。周边设备庞大,如效果器、放大器等。经过周边设备可以使吉他出现各种不同种类的音色,可塑性强,表现力随个人爱好而定。演奏可使用拨片、滑棒甚至是电钻等工具创造更多效果。 二、吉他的结构 吉他弦的记号 琴头朝上,面对吉他指板,从右 往左(从细到粗)数分别是1、2、3、4、 5、6 弦。 吉他的“品” 琴头朝上,面对吉他指板,从上 往下数,每一格就是一品,一般的吉 他从琴枕到琴身为止有12 品,民谣吉 他从琴枕到琴身为止一般有14 品。一 般会在第5、7 品上印有一个点,在12 品印有两个点,便于记忆。 三、持琴姿势 1.将右腿放在左腿上。 2.将琴箱最凹处放在右腿上,琴箱背部抵在身体右胸处。 3.将琴头抬起,高度超过琴箱,与水平方向成30°~45°左右。 4.将右手小臂后三分之一处放置在琴箱最凸部位,右手腕放松,手自然垂直与琴弦呈十字交叉状,也可略微倾斜。 5.右手拇指放在音孔区的5 弦上,食指,中指,无名指放在第3、2、1 弦上方(不要碰弦),右手腕弓起,与手掌,手指呈一条弧线。 6.提起左手,拇指放置琴颈背部,其余各指放在指板上,用指尖以垂直的姿势放在指板上,

关于学吉他的大概步骤

关于学吉他的大概步骤! 很多初学者都比较迷茫。总说不知道怎么练。要不就是感觉练的不进步。还有的是练一年后不知道自己接下去练什么。根据这些问题我大概的讲讲吧! 第一:刚开始怎么练吉他。所谓练。就要经常练。而且喜欢练。兴趣很重要,兴趣是最好的老师。首先你要对吉他有极大的兴趣。接着就是苦练。在方法正确的前提下,从基础开始练。我个人认为刚开始时练爬格子。把自己的手指练得灵活些。多爬几个小时。而且每天都要爬。爬的时间长些。过一段时间你会发现你的手指比以前灵活了。这个同时学习一些和弦,甚至可以直接去弹一些简单一曲子。接着就学音阶。 爬音阶。音阶对弹很重要。爬音阶的时候要作到每个音都很纯。开始不要追求速度。要追求质量。也就音要弹的纯。把音阶弹熟。还有开始学乐理知识。从简单的乐理开始学。尽量把所学的乐理知识用到吉他上。这是初学者的第一步。 第二:感觉自己练琴不进步怎么办?这时你千万不要停下来。虽然你感觉没进步。其实它一直在进步。你要坚持。持之以恒。过了这段时间后你会感觉自己上了一个台阶。 在这段期间。多学乐理。乐理知识是很多的。学些有难度些的乐理知识。 第三:练到一段时间后不知道练什么?每天的练习都必须有基础练习。这点不能忽视。而且每天的练习要有计划。看自己的水平达到什么程度。来定下一步的练习。我感受最深的是扒带。扒带真的可以学到很多东西。所以你学一段时间后不知道学什么。你就学扒带。扒一些有名的曲子。吸取里面的精华。 吉他的初学步骤 如果民谣的话,先认识一下六线谱,这种谱子比较直观,练练指法,先认识一下C调和G调的音阶,多认识一下和弦,多学学和弦转换的窍门,练练节奏,以及分解和弦。主要是提起兴趣来。。只要能弹唱一首曲子我想你的兴趣就会大增的。。应该就这些吧。。。 努力,相信你会学好吉他的。。。 回答:2008-06-30 09:14 其它回答共3条回答 [新手] 我看看你还是去上看看!那是了乐器门户网站! 要是找国外的名歌,上有得是! 回答:2008-07-01 13:41

上百个吉他教程下载汇集最全

吉他视频教程和资料大汇总免费下载仅供学习参考 注意:在word里面,按ctrl键点击带蓝色有链接的字眼即可进入下载界面了。建议用工具 下载。由于网盘不同,有的需要等一分钟才能点击下载,请在网速快的时候下载。 来自https://www.wendangku.net/doc/7a15649331.html,/gogo520117/blog/item/4648bb3b60bff5ffb311c745.html 我收集了一些吉他的教学资料,和博友们一起分享学习,只需要点击一下文字链接即可下载,有的下载需要一定的时间,等等“下载”字眼出现在下载,全部免费哦。如果觉得可以要顶一 个鼓励一下哦。看完下面的吉他教程,保证你吉他有突飞猛进的进展。 以下资料的地址:https://www.wendangku.net/doc/7a15649331.html,/gogo520117/blog/item/4648bb3b60bff5ffb311c745.html 教学资料: 吉他谱: 序号文件下载外链图片外链 1 不能说的秘密吉他谱.txt 获取下载外链- 2 曾轶可_我还是个孩子_吉他 谱_(图).doc 获取下载外链- 3 大约在冬季_吉他谱.doc 获取下载外链- 4 稻香吉他谱.txt 获取下载外链- 5 电吉他基础教程.doc 获取下载外链- 6 丁香花吉他谱.pdf 获取下载外链- 7 情非得已(吉他谱).docx 获取下载外链- 8 天空之城吉他独奏曲谱.pdf 获取下载外链- 9 完整版卡尔卡西作品25首练 习曲.pdf 获取下载外链- 10 我是愤怒_吉他谱.pdf 获取下载外链- 11 许巍吉他谱全集(手机MP3上 用).txt 获取下载外链- 12 致爱丽丝.pdf 获取下载外链 吉他教程 钟立风_《他为我们编织音乐》专辑吉他谱.pdf [世界著名乐队.原版吉他谱合集].Alice.in.Chains.-.Jar.off.lies 怎样演奏古典吉他-赵长贵4.pdf 怎样演奏古典吉他-赵长贵2.pdf 怎样演奏古典吉他-赵长贵3.pdf 怎样演奏古典吉他-赵长贵5.pdf 怎样演奏古典吉他-赵长贵1.pdf 民谣吉他经典教程.pdf

相关文档
相关文档 最新文档