Excel Online & Google Sheets (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,538
Được thích
4,133
Giới tính
Nam
Rảnh Mạnh đang mò và tìm tài liệu Excel Online & Google Sheets để vọc chút có xem bài sau thấy hay úp đây để ta bàn ra tính vào

Một câu hỏi lớn là

1/ Làm sao từ Excel ta có thể viết code lấy dữ liệu từ Excel Online & Google Sheets về bảng tính Excel

2/ Tài liệu + Linh tinh ai biết chỉ dùm tham khảo ....

Xin mời các Bạn tham gia trao đổi ý kiếm và cùng nhau thảo luận Vui Văn Vẻ -0-0-0-
 
1/ Làm sao từ Excel ta có thể viết code lấy dữ liệu từ Google Sheets về bảng tính Excel
Có 2 trường hợp như này anh:
- Nếu share link thì dùng API download file, rồi ADO lấy dữ liệu từ file tải về.
- Nếu không share link thì dùng API của Google. Vụ này anh xem mấy bài của em về Python cũng có nói qua đấy.
 
Có 2 trường hợp như này anh:
- Nếu share link thì dùng API download file, rồi ADO lấy dữ liệu từ file tải về.
- Nếu không share link thì dùng API của Google. Vụ này anh xem mấy bài của em về Python cũng có nói qua đấy.
Vậy ta làm cái dễ trước xem sao nhé ... xong tiếp tục cái khác

1/ share link ==> ok
2/ xài ADO từ Excel lấy về ===> code như thế nào đây ???!!!
3/ Python = Mạnh ko có biết = Tịt :D
4/ Xem Video thấy lấy ok đó nhưng xem cho biết chút à = xem như chưa biết vì cái Mạnh cần là tham khảo code xong tự tay code
 
1/ share link ==> ok
2/ xài ADO từ Excel lấy về ===> code như thế nào đây ???!!!
Anh share link rồi dùng API DownloadFile của Windows để tải về, kết quả được file Excel. Chỗ này chỉ vướng xíu là mò cái link để tải trực tiếp. :-p
Đến đây dùng ADO thì anh biết rồi còn gì.
 
Anh share link rồi dùng API DownloadFile của Windows để tải về, kết quả được file Excel. Chỗ này chỉ vướng xíu là mò cái link để tải trực tiếp. :p
Đến đây dùng ADO thì anh biết rồi còn gì.
nghỉ có cách xài ADO lấy trực tiếp bỏ qua tải file về .... cái đó nói như Bác Trọng là Rất Quan Trọng .... đấy
 
Em Vân thấy trên diễn đàn của mình cũng có bài hướng dẫn lấy dữ liệu từ GoogleSheet đó anh !
 
Đang Google Sheets, anh chuyển qua Maps :p
Anh cần làm gì với cái đó?
thì cứ mò cái này nó liên quan cái kia xong mò cái kia nó ra cái khác
Cứ loanh quanh vậy hoài tới lúc nào đó ngộ ra thì bắt đầu hệ thống lại coi như Viết code tạm chút

Delphi Mạnh cũng mò kiểu ý ... cứ loanh quanh vậy hoài đùng cái nhảy lên Form Dephi viết phà phà mới sợ :D :p
 
thì cứ mò cái này nó liên quan cái kia xong mò cái kia nó ra cái khác
Cứ loanh quanh vậy hoài tới lúc nào đó ngộ ra thì bắt đầu hệ thống lại coi như Viết code tạm chút

Delphi Mạnh cũng mò kiểu ý ... cứ loanh quanh vậy hoài đùng cái nhảy lên Form Dephi viết phà phà mới sợ :D :p
Dịch vụ của Google rất nhiều cái hay (mới dùng đồ free thôi đã hay rồi ấy), anh thử dùng vài cái xem. :)

Ví dụ cái API Maps kia có ứng dụng làm cái check-in chấm công, kiểm soát nhân viên theo tọa độ GPS theo thời gian thực.
 
thử đi các Bạn xem
Excel Online & Google Sheets ............. có gì khác biệt
1/ Tạo 1 tài khoản của Bill
2/ Hình như trong tài khỏan đó cũng có nếu ko vào link sau

1596029603687.png

Gõ 1 chút có vẻ rất chi là nhanh

1596030789053.png
 
Lần chỉnh sửa cuối:
Rảnh Mạnh đang mò và tìm tài liệu Excel Online & Google Sheets để vọc chút có xem bài sau thấy hay úp đây để ta bàn ra tính vào

Một câu hỏi lớn là

1/ Làm sao từ Excel ta có thể viết code lấy dữ liệu từ Excel Online & Google Sheets về bảng tính Excel

2/ Tài liệu + Linh tinh ai biết chỉ dùm tham khảo ....

Xin mời các Bạn tham gia trao đổi ý kiếm và cùng nhau thảo luận Vui Văn Vẻ -0-0-0-
Cách củ chuối của mình thế này nhé. Giả sử mình có dữ liệu như file này.
Và mình viết code thế này đây. Đầu tiên tải file về thư mục tạm trên máy tính, sau đó đọc dữ liệu từ file tạm này, đưa dữ liệu đã đọc vào sheet cuối cùng xóa file tạm. Nhưng mình chưa thử file có dữ liệu lớn không biết nó có làm được không tạm thời với dữ liệu bé hạt tiêu kia thì chạy phát một.
 

File đính kèm

Cách củ chuối của mình thế này nhé. Giả sử mình có dữ liệu như file này.
Và mình viết code thế này đây. Đầu tiên tải file về thư mục tạm trên máy tính, sau đó đọc dữ liệu từ file tạm này, đưa dữ liệu đã đọc vào sheet cuối cùng xóa file tạm. Nhưng mình chưa thử file có dữ liệu lớn không biết nó có làm được không tạm thời với dữ liệu bé hạt tiêu kia thì chạy phát một.
chạy tốt ... Mạnh tìm cách mò xem có cách nào lấy tiếp về ko ???

ứng dụng tạm là làm cái List Sim số đẹp + báo giá các loại hàng .... hàng ngày lên đó Xong từ Add-ins Mạnh viết là khách lấy về xem
Cái SQL cho Excel + Access kia của Mạnh sẻ xử lý các phần còn lại

Rảnh lần mò từng cái 1 sẻ ra thôi -0-0-0- :p
 
Cách củ chuối của mình thế này nhé. Giả sử mình có dữ liệu như file này.
Và mình viết code thế này đây. Đầu tiên tải file về thư mục tạm trên máy tính, sau đó đọc dữ liệu từ file tạm này, đưa dữ liệu đã đọc vào sheet cuối cùng xóa file tạm. Nhưng mình chưa thử file có dữ liệu lớn không biết nó có làm được không tạm thời với dữ liệu bé hạt tiêu kia thì chạy phát một.
Trường hợp file trên Google sheet của mình có 3 sheets (sheets 1, 2 ,3).
Vậy mình muốn lấy dữ liệu của sheets 2, thì mình làm thế nào vậy anh
 
Trường hợp file trên Google sheet của mình có 3 sheets (sheets 1, 2 ,3).
Vậy mình muốn lấy dữ liệu của sheets 2, thì mình làm thế nào vậy anh
cái này mạnh làm như sau:

1/ Ứng dụng cái SQL của mạnh thay vì chọn file trên HD thì tải file đó về xong gán nó vào là xong
2/ Vấn đề là Mạnh đang tìm cách lấy trực tiếp bỏ qua tải File như đã nói bài số 5
3/ ai mê thì tham khảo C#
 
Trường hợp file trên Google sheet của mình có 3 sheets (sheets 1, 2 ,3).
Vậy mình muốn lấy dữ liệu của sheets 2, thì mình làm thế nào vậy anh
Thì dựa vào tên Sheet thôi, giả sử sheet2 có tên là Data2 chẳng hạn thì câu lệnh lấy dữ liệu là.
Mã:
Arr = GetData(FileGS, "Data2", "", True, True)
 
Mạnh thấy tây nó viết code trên VBA tạo 1 cái Form xong từ VBA Excel nhập liệu lên Google Sheet đó ...
Tuy nhiên khai báo trên Google sheet để cho VBA & Google Sheet nó hiểu nhau quá chi là rối rắm ... nhức đầu lắm

Nó xài thư viện sau

1596158102198.png
 
VBA Excel nhập liệu lên Google Sheet
Cái này đơn giản mà anh. :)
Sơ đồ như này:
- Ban đầu là Google Forms gửi dữ liệu lên Google Sheets.
- Anh lấy link POST dữ liệu từ Google Forms, và các entry.xxxxxxxxx của các fields trong Forms để làm các thông số thiết lập, dùng bất kỳ công cụ nào làm việc được với giao thức http để POST lên Google Sheets.

.
.
.


Ví dụ cái API Maps kia có ứng dụng làm cái check-in chấm công, kiểm soát nhân viên theo tọa độ GPS theo thời gian thực.
Còn vụ này em nói ở bài trước ấy.
Sơ đồ như này:
- Dùng Maps API để lấy giá trị lat, long (tọa độ GPS), thông qua Google Forms (dùng cách thức POST) gửi dữ liệu lên Google Sheets.
Phần này tạo một website, trên đó có một ô điền ID của người cần báo cáo.
- Lấy link website kia tạo QRcode, in và dán ở vị trí cần thiết.
- Người dùng chỉ cần thông qua app mobile nào đó scan QRcode trên, nhập mã ID rồi Submit là xong.

1596160639194.png
 
Lần chỉnh sửa cuối:
code tải File Google Sheet Úp cho ai iu nó ... code sau thuộc về Internet nhé
Mã:
Sub DownloadGoogleSheets()

Dim ShtUrl, Location, FileName As String
Dim objWebCon, objWrit As Object

'Sheet Url
ShtUrl = "https://docs.google.com/spreadsheets/d/1Fy8T1FeEDzFX9U8_lQDk0HrLNSDGjTDUZFxlx-PWXbY/export?format=csv&id=1Fy8T1FeEDzFX9U8_lQDk0HrLNSDGjTDUZFxlx-PWXbY&gid=0"  'Need to replace id and gid

'Location
Location = ThisWorkbook.Path & "\"  'C:\Export\" Replace with location

'FileName
FileName = "GoogleSheet.csv"

'Connection to Website
Set objWebCon = CreateObject("MSXML2.XMLHTTP.3.0")

'Writer
Set objWrit = CreateObject("ADODB.Stream")

'Connecting to the Website
objWebCon.Open "Get", ShtUrl, False
objWebCon.Send (ShtUrl)

'Once page is fully loaded
If objWebCon.Status = 200 Then

'Write the text of the sheet
objWrit.Open
objWrit.Type = 1
objWrit.Write objWebCon.ResponseBody
objWrit.Position = 0
objWrit.SaveToFile Location & FileName
objWrit.Close

End If

Set objWebCon = Nothing
Set objWrit = Nothing

End Sub

Không khó lắm đam mê mò mỗi ngày 1 tí là xong à
 
If objWebCon.Status = 200 Then
Làm việc với web thì kiểu này không hiệu quả đâu anh. Tức là chỉ kiểm tra một lần ngay sau khi 'request', xảy ra trường hợp Status chưa thành công thì không lấy được dữ liệu về.
Vì vậy mình cần thiết lập 'time_out' để kiểm tra việc 'request' đã thành công chưa để lấy dữ liệu.
Ví dụ:
time_out = 5000 ' milliseconds
step_time = 100 ' milliseconds
Sau mỗi step_time mình kiểm tra objWebCon.Status 1 lần, nếu thành công thì lấy dữ liệu.
Sau time_out mà không thành công thì mới bỏ cuộc.
 
Cái này đơn giản mà anh. :)
Sơ đồ như này:
- Ban đầu là Google Forms gửi dữ liệu lên Google Sheets.
- Anh lấy link POST dữ liệu từ Google Forms, và các entry.xxxxxxxxx của các fields trong Forms để làm các thông số thiết lập, dùng bất kỳ công cụ nào làm việc được với giao thức http để POST lên Google Sheets.

.
.
.



Còn vụ này em nói ở bài trước ấy.
Sơ đồ như này:
- Dùng Maps API để lấy giá trị lat, long (tọa độ GPS), thông qua Google Forms (dùng cách thức POST) gửi dữ liệu lên Google Sheets.
Phần này tạo một website, trên đó có một ô điền ID của người cần báo cáo.
- Lấy link website kia tạo QRcode, in và dán ở vị trí cần thiết.
- Người dùng chỉ cần thông qua app mobile nào đó scan QRcode trên, nhập mã ID rồi Submit là xong.

View attachment 242098
Mạnh nghỉ đơn giản vầy xem có trúng ko nhe

1/ Nếu ứng dụng Google Sheet Or Excel online làm Database thì thua ... chỉ chơi bời vui vẻ chút
2/ Nếu làm Database là nơi lưu trữ và truy xuất dữ liệu thì mục số 1 keo Database.accdb = Ông cụ
3/ Nếu làm Database là nơi lưu trữ và truy xuất dữ liệu thì mục số 1 keo Server Ms = Cố Cố Ông cụ
....
Xu hướng thời đại 4.0 là thế nên vọc cho biết và ứng dụng tùy vào thực tế mà làm
 
Lần chỉnh sửa cuối:
Mạnh nghỉ đơn giản vầy xem có trúng ko nhe

1/ Nếu ứng dụng Google Sheet Or Excel online là Database thì thua ... chỉ chơi bời vui vẻ chút
2/ Nếu làm Database là nới lưu trữ và truy xuất dữ liệu thì mục số 1 keo Database.accdb = Ông cụ
3/ Nếu làm Database là nới lưu trữ và truy xuất dữ liệu thì mục số 1 keo Server Ms = Cố Cố Ông cụ
....
Xu hướng thời đại 4.0 là thế nên vọc cho biết và ứng dụng tùy vào thực tế mà làm
Mục 1:
Excel Online là của Microsoft, cũng có ngôn ngữ lập trình dùng online đó.

Google Sheets là của Google.
Hai cái này hơi hơi khác nhau.

Anh mới ở mức xem các dịch vụ miễn phí thôi.
Và chỉ ở mức miễn phí, nếu anh kết hợp được các dịch vụ với nhau thì cũng đã dư sức ứng dụng rồi.
----
Theo những gì em biết được về các bài anh viết, dữ liệu của anh đang ở mức dùng MS Access để lưu trữ, truy vấn.
Anh dùng dịch vụ trả phí xem (hoặc dùng thử thôi), sẽ thấy nhiều cái hay hơn, lớn hơn, tiện hơn nhiều.

1596162329110.png
 
Thong thả vui vẻ và có thời gian Mạnh sẻ mò ra thôi
 
code tải File Google Sheet Úp cho ai iu nó ... code sau thuộc về Internet nhé
Mã:
Sub DownloadGoogleSheets()

Dim ShtUrl, Location, FileName As String
Dim objWebCon, objWrit As Object

'Sheet Url
ShtUrl = "https://docs.google.com/spreadsheets/d/1Fy8T1FeEDzFX9U8_lQDk0HrLNSDGjTDUZFxlx-PWXbY/export?format=csv&id=1Fy8T1FeEDzFX9U8_lQDk0HrLNSDGjTDUZFxlx-PWXbY&gid=0"  'Need to replace id and gid

'Location
Location = ThisWorkbook.Path & "\"  'C:\Export\" Replace with location

'FileName
FileName = "GoogleSheet.csv"

'Connection to Website
Set objWebCon = CreateObject("MSXML2.XMLHTTP.3.0")

'Writer
Set objWrit = CreateObject("ADODB.Stream")

'Connecting to the Website
objWebCon.Open "Get", ShtUrl, False
objWebCon.Send (ShtUrl)

'Once page is fully loaded
If objWebCon.Status = 200 Then

'Write the text of the sheet
objWrit.Open
objWrit.Type = 1
objWrit.Write objWebCon.ResponseBody
objWrit.Position = 0
objWrit.SaveToFile Location & FileName
objWrit.Close

End If

Set objWebCon = Nothing
Set objWrit = Nothing

End Sub

Không khó lắm đam mê mò mỗi ngày 1 tí là xong à
Cháu chào bác Mạnh, code này chạy ngon và lành lắm ạ. Chỉ có điều là nó chỉ hoạt động khi chế độ share của link là " tất cả mọi người có thể xem nếu có link" ạ.
 
Mạnh nghỉ đơn giản vầy xem có trúng ko nhe

1/ Nếu ứng dụng Google Sheet Or Excel online làm Database thì thua ... chỉ chơi bời vui vẻ chút
2/ Nếu làm Database là nơi lưu trữ và truy xuất dữ liệu thì mục số 1 keo Database.accdb = Ông cụ
3/ Nếu làm Database là nơi lưu trữ và truy xuất dữ liệu thì mục số 1 keo Server Ms = Cố Cố Ông cụ
....
Xu hướng thời đại 4.0 là thế nên vọc cho biết và ứng dụng tùy vào thực tế mà làm
Google có nhiều ứng dụng hỗ trợ lắm như BigData truy suất có Data Studio nhiều cái hay lắm không phải đồ chơi đâu
 
Google có nhiều ứng dụng hỗ trợ lắm như BigData truy suất có Data Studio nhiều cái hay lắm không phải đồ chơi đâu
mấy cái đó mạnh có biết ... tuy nhiên Mạnh chỉ nói góc độ ứng dụng nó làm Database
Còn từ Google Sheet ta có thể viết code truy xuất từ Server Ms hay cái gì đó cũng được vv...
...
Còn Mạnh đang suy nghĩ làm sao Viết 1 cái DLL xong từ Google Sheet keo nó chạy đó mới là mong muốn và hướng tới của Mạnh
Còn viết code trên Google Sheet thì Mạnh mới xem mấy ngày thì thấy ko khó lắm ... mỗi ngày mò chút + lại rồi cũng viết tạm chút
nó không khó = Delphi
 
Lần chỉnh sửa cuối:
mấy cái đó mạnh có biết ... tuy nhiên Mạnh chỉ nói góc độ ứng dụng nó làm Database
Còn từ Google ta có thể viết code truy xuất từ Server Ms hay cái gì đó cũng được vv...
...
Còn Mạnh đang suy nghĩ làm sao Viết 1 cái DLL xong từ Google Sheet keo nó chạy đó mới là mong muốn và hướng tới của Mạnh
Còn viết code trên Google Sheet thì Mạnh mới xem mấy ngày thì thấy ko khó lắm ... mỗi ngày mò chút + lại rồi cũng viết tạm chút
nó không khó = Delphi
Anh xem ở đây thử
https://sites.google.com/a/mcpher.com/share/Home/excelquirks/downlable-items
 
mấy cái đó mạnh có biết ... tuy nhiên Mạnh chỉ nói góc độ ứng dụng nó làm Database
Còn từ Google Sheet ta có thể viết code truy xuất từ Server Ms hay cái gì đó cũng được vv...
...
Còn Mạnh đang suy nghĩ làm sao Viết 1 cái DLL xong từ Google Sheet keo nó chạy đó mới là mong muốn và hướng tới của Mạnh
Còn viết code trên Google Sheet thì Mạnh mới xem mấy ngày thì thấy ko khó lắm ... mỗi ngày mò chút + lại rồi cũng viết tạm chút
nó không khó = Delphi
Từ khái niệm (định nghĩa) Database và Google Sheet đã khác xa nhau rồi, nên tất nhiên là Google Sheet lại là và làm Database sánh sao với các Database chuyên
 
Cách đây 3 năm tôi đã làm việc làm báo cáo động trên Excel mà data lấy từ GoogleSheets. Tuy nhiên sau đó tôi phải tạm dừng lại không phát triển tiếp vì tốc độ rất chậm, chưa thể triển khai thực tế.
 
Lần chỉnh sửa cuối:
Cách đay 3 năm tôi đã làm việc làm báo cáo động trên Excel mà data láy từ GoogleSheets. Tuy nhiên sau đó tôi phải tạm dừng lại không phát triển tiếp vì tốc độ rất chậm, chưa thể triển khai thực tế.
Mạnh thấy ở link sau có hướng dẫn + Code C# ... cái cần tìm là Code Delphi mà khan hiếm ghê :D
Hoặc code VBA quậy cho rành xong chuyển qua Delphi

 
Google Sheet mới có tính năng sau... hay đấy

Edge mới cũng xài nhiều thứ Như Google Chrome ... mở Google Sheet + Google Driver + nhiều thứ y trang Google vv

1604208233228.png
 
Em cũng mới biết google sheet nhưng chưa biết tìm tài liệu ở đâu để học. Diễn đàn mình có không anh chị em, em chưa tìm thấy hay không có?
 
Hihi diễn đàn mình thiên tài không, bạn nghĩ sao không có tài liệu.
 

Bài viết mới nhất

Back
Top Bottom