Solved

using the excel sheet in a VB form

Posted on 2001-07-24
8
157 Views
Last Modified: 2012-06-21
I am trying to use the excel sheet in a vb form to keep the program clean.  When I added the sheet to the form it's default name is 'Sheet1'.  I want to be able to populate the sheet from a access DB and allow the user to make changes and then save data back to DB.  I'm having problems referencing the cells.  Can anyone show me the code on how to reference the 'Sheet1' so I can control the cells?
0
Comment
Question by:jayhogan
  • 4
  • 3
8 Comments
 
LVL 8

Expert Comment

by:Dave_Greene
ID: 6312923
Here is an example

Private Sub cmdButtonSum_Click()

   Dim Obj1 As Object
   Dim answer As Integer
       
        Set Obj1 = CreateObject("Excel.Application")
        Obj1.Visible = True
        Obj1.Workbooks.Add
        Obj1.Cells(1, 1).Value = textbox1.Text
        Obj1.Cells(2, 1).Value = textbox2.Text
        Obj1.Cells(3, 1).Formula = "=R1C1+R2C1"
        answer = Obj1.Cells(3, 1)
        MsgBox (answer)
        Obj1.Application.Quit
        Set Obj1 = Nothing



End Sub

0
 

Expert Comment

by:Alon_h
ID: 6313202
Hi jayhogan.

Try this :

Private Sub Command1_Click()
Dim xlApp As New Excel.Application
Dim xlWb As New Excel.Workbook
Dim xlSht As Excel.Sheets

   Set xlApp = CreateObject("Excel.Application")
   xlApp.Visible = True
   
   Set xlWb = xlApp.Workbooks.Add
   Set xlSht = xlWb.Sheets
   
   xlSht(1).Cells(1, 1) = "Test"
   MsgBox xlSht(1).Name
   
   xlApp.Quit
   Set xlSht = Nothing
   Set xlWb = Nothing
   Set xlApp = Nothing
   
End Sub
0
 

Author Comment

by:jayhogan
ID: 6313475
these 2 routines work but they still open excel outside of vb.  What I've added is under Project - Componets - Insertable Objects - and then Microsoft Excel Worksheet.  Adding this allows me to create a sheet on a form.  That's the one I'm trying to edit.
0
Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

 
LVL 8

Accepted Solution

by:
Dave_Greene earned 100 total points
ID: 6313482
Just get rid of  "Set Obj1 = CreateObject("Excel.Application")"

Use Obj1 or whatever your control name is on the form  

Cheers
0
 

Author Comment

by:jayhogan
ID: 6314047
when i try to run

frmAddTags.Sheet1.Cells(1,1)

i get an error 'Method or Data Member not found
0
 
LVL 8

Expert Comment

by:Dave_Greene
ID: 6314056
looks like you are bypassing your excel object and coding right to the sheet level.  

frmAddTags.<EXCELControlNameHere>.Sheet1.Cells(1,1)
0
 

Author Comment

by:jayhogan
ID: 6314081
I figured it out. my line must read

frmAddTags.Sheet1.Object.Worksheets("Sheet1").Cells(1, 1) = "????"

I'm going to accept your answer because you did get me going towards the right direction. thanks
0
 

Author Comment

by:jayhogan
ID: 6314085
I figured it out. my line must read

frmAddTags.Sheet1.Object.Worksheets("Sheet1").Cells(1, 1) = "????"

I'm going to accept your answer because you did get me going towards the right direction. thanks
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now